Chrome 71 zawiera też zmiany w funkcjach cache.addAll()
i importScripts()
. Więcej informacji o tym znajdziesz w artykule Jeffa Posnicka Zmiany w wersji cache.addAll()
i importScripts()
w Chrome 71.
Usuń metodę SpeechSynthesis.speak() bez aktywacji użytkownika
Interfejs SpeechSynthesis
jest aktywnie wykorzystywany w internecie. Z niepotwierdzonych źródeł wiemy, że inne sposoby autoodtwarzania są zamykane, a użytkownicy uciekają się do korzystania z interfejsu Web Speech API, który nie podlega zasadom autoodtwarzania.
Funkcja speechSynthesis.speak()
zwraca teraz błąd, jeśli dokument nie został aktywowany przez użytkownika. Ta funkcja została wycofana w wersji Chrome 70.
Zamierzamy wycofać | Chromestatus Tracker | Błąd w Chromium
Usuwanie wersji interfejsów API z prefiksem
W Chrome usunięto niestandardowe aliasy 2 powszechnie obsługiwanych interfejsów standardowych.
WebKitAnimationEvent
Interfejs zdarzeń WebKitAnimationEvent
został całkowicie zastąpiony interfejsem AnimationEvent
, który służy do obsługi zdarzeń związanych z animacjami CSS. Format z preiksem jest obsługiwany tylko w Safari. Firefox i Edge obsługują tylko bezprefiksowe AnimationEvent
.
Intend to Remove | Chromestatus Tracker | Chromium Bug
WebKitTransitionEvent
WebKitTransitionEvent
został całkowicie zastąpiony przez TransitionEvent
, interfejsem zdarzeń używanym do zdarzeń związanych z przechodzeniem do innych elementów CSS (np. transitionstart
). Forma z prefiksem jest obsługiwana tylko w Safari. Firefox i Edge obsługują tylko TransitionEvent
bez prefiksu.
Intend to Remove | Chromestatus Tracker | Chromium Bug
Usuń URL.createObjectURL z MediaStream
Metoda URL.createObjectURL()
została usunięta z interfejsu MediaStream
. Ta metoda została wycofana w 2013 roku i zastąpiona przypisaniem strumieni do HTMLMediaElement.srcObject
.
Stara metoda została usunięta, ponieważ jest mniej bezpieczna i wymaga wywołania funkcji URL.revokeOjbectURL()
, aby zakończyć transmisję. Inne przeglądarki albo wycofały (Firefox) albo usunęły (Safari) tę funkcję.
Intend to Remove | Chromestatus Tracker | Chromium Bug
Usuń document.origin
Właściwość document.origin
została usunięta. Ta właściwość była implementowana tylko w Chromium i WebKit. Jest to element zbędny, ponieważ self.origin
może być używany w kontekście okna i workera oraz ma szersze wsparcie.
Intend to Remove | Chromestatus Tracker | Chromium Bug
Elementy wycofane
W tej wersji Chrome nie wycofano żadnych funkcji. Stan platformy Chrome zawiera listę wycofanych funkcji z poprzednich wersji Chrome.
Zasady wycofywania
Aby platforma działała prawidłowo, czasami usuwamy z niej interfejsy API, które nie są już potrzebne. Możemy usunąć interfejs API z wielu powodów, na przykład:
- Zostały one zastąpione nowszymi interfejsami API.
- Są one aktualizowane, aby odzwierciedlać zmiany w specyfikacjach, co zapewnia zgodność z innymi przeglądarkami.
- Są to wczesne eksperymenty, które nigdy nie zostały wdrożone w innych przeglądarkach, więc mogą zwiększać obciążenie zespołu pomocy dla deweloperów.
Niektóre z tych zmian będą miały wpływ na bardzo niewielką liczbę witryn. Aby uniknąć problemów z wyprzedzeniem, staramy się wcześniej informować deweloperów, aby mogli wprowadzić niezbędne zmiany, które pozwolą utrzymać ich witryny w stanie operacyjnym.
Chrome ma obecnie proces wycofywania i usuwania interfejsów API, który obejmuje:
- Opublikuj ogłoszenie na liście adresowej blink-dev.
- Ustaw ostrzeżenia i uwzględnij skale czasowe w konsoli Narzędzi deweloperskich w Chrome, gdy wykryto użycie na stronie.
- Poczekaj, sprawdź, a potem usuń funkcję, gdy jej użycie spadnie.
Listę wszystkich wycofanych funkcji znajdziesz na stronie chromestatus.com. Wystarczy, że użyjesz filtra wycofanych funkcji , a aby wyświetlić wycofane funkcje, zastosuj filtr wycofanych funkcji. W tych postach postaramy się też podsumować niektóre zmiany, uzasadnienia i ścieżki migracji.