API-beëindigingen en verwijderingen in Chrome 52

Joe Medley
Joe Medley

In bijna elke versie van Chrome zien we een aanzienlijk aantal updates en verbeteringen aan het product, de prestaties ervan en ook de mogelijkheden van het webplatform. In dit artikel worden de wijzigingen beschreven in Chrome 52, dat vanaf 9 juni in bèta is. Deze lijst kan op elk moment worden gewijzigd.

Schaf MediaStream beëindigde gebeurtenis en attribuut en onended attribuut af

TL;DR: De ended gebeurtenis en het attribuut en de onended gebeurtenishandler worden verouderd omdat ze zijn verwijderd uit de Media Capture en Streams-specificaties .

Intentie om te verwijderen | Chromestatustracker | Chroombug

Noch de ended gebeurtenis, noch de onended gebeurtenishandler maken al ongeveer drie jaar deel uit van de WebRTC-specificatie. Ontwikkelaars die evenementen willen bekijken, moeten MediaStreamTracks gebruiken in plaats van MediaStreams .

Verwijdering wordt verwacht in Chrome 53.

Blokkeer pop-ups van cross-origin iframes tijdens aanraakgebeurtenissen, behalve tijdens een tikgebaar

TL;DR: Chrome zal beginnen met het verbieden van pop-ups en andere gevoelige bewerkingen op aanraakgebeurtenissen die niet overeenkomen met een tik vanuit cross-origin iframes.

Intentie om te verwijderen | Chromestatustracker | Chroombug

Door hun aard kunnen aanraakgebeurtenissen dubbelzinnig zijn in vergelijking met de overeenkomstige muisgebeurtenissen. Als een gebruiker bijvoorbeeld een vinger over het scherm beweegt, schuift de gebruiker dan een tuimelschakelaar of scrollt hij door de weergave? Sommige inhoud van derden in iframes heeft van deze dubbelzinnigheid geprofiteerd om opzettelijk het scrollen op de bevattende pagina uit te schakelen.

Om dit tegen te gaan, zijn pop-ups en andere gevoelige bewerkingen niet toegestaan ​​bij aanraakgebeurtenissen van cross-origin iframes. De touchend-gebeurtenis blijft zich gedragen zoals voorheen.

Overbelasting van postMessage() afschaffen

TL;DR: Een onnodige en weinig gebruikte variant van de postMessage() interface wordt verouderd, met name postMessage(message, transferables, targetOrigin) .

Intentie om te verwijderen | Chromestatustracker | Chroombug

De methode postMessage() is een manier om veilig te communiceren tussen de scripts van pagina's van verschillende oorsprong. WebKit/Blink ondersteunt drie versies:

  • postMessage(message, targetOrigin)
  • postMessage(message, targetOrigin, transferables)
  • postMessage(message, transferables, targetOrigin)

Het laatste item in deze lijst was een ongeluk uit de geschiedenis van de evolutie en implementatie van de specificatie. Omdat het zelden wordt gebruikt , wordt het verouderd en later verwijderd. Dit geldt voor zowel window.postMessage() als worker.postMessage() .

Verwijdering wordt verwacht in Chrome 54.

Verwijder de ondersteuning voor X-Frame-Options in labels

TL;DR: Om aan de specificaties te voldoen en de consistentie met andere browsers te vergroten, wordt de ondersteuning voor X-Frame-Options in een <meta> -tag verwijderd.

Intentie om te verwijderen | Chroombug

De X-Frame-Options HTTP-antwoordheader geeft aan of een browser een pagina kan weergeven in een <frame> , <iframe> of <object> tag. Hierdoor kan een site clickjacking vermijden, aangezien dergelijke pagina's niet in andere sites kunnen worden ingesloten. De huidige versie van de X-Frame-Options-specificatie beperkt gebruikersagenten expliciet in het ondersteunen van dit veld binnen een <meta> -tag.

Om aan de specificaties te voldoen en de consistentie met andere browsers te vergroten, wordt de ondersteuning voor X-Frame-Options in een <meta> -tag verwijderd.

Verwijder niet-primaire knopklikgebeurtenis

TL;DR: Niet-primaire muisklikken activeren niet langer klikgebeurtenissen, maar MouseEvent.button is nog steeds beschikbaar.

Intentie om te verwijderen | Chromestatustracker | Chroombug

Om Chrome in lijn te brengen met de UIEvents-specificaties , verwijderen we de klikgebeurtenissen voor niet-primaire muisknoppen. Niet-primaire muisknoppen variëren per apparaat. Over het algemeen betekent dit alles anders dan een rechter- of linkermuisknop. Houd er rekening mee dat de precieze knop waarop is geklikt nog steeds kan worden opgehaald met behulp van de eigenschap MouseEvent.button die naar gebeurtenissen zoals mousedown of mouseup wordt verzonden.

Verwijder verzoekAutocomplete()

Met de functie requestAutocomplete() konden formulieren op verzoek worden ingevuld via de functie voor automatisch aanvullen van de browser. Maar ruim twee jaar later wordt deze mogelijkheid alleen nog ondersteund in Blink en is het gebruik ervan laag . Om deze redenen is requestAutocomplete() verwijderd in Chrome 52.

Intentie om te verwijderen