Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Firefox 49 Versionshinweise für Entwickler

Um die neuesten Entwicklerfunktionen von Firefox zu testen, installieren Sie die Firefox Developer Edition. Firefox 49 wurde am 20. September 2016 veröffentlicht. Dieser Artikel listet wichtige Änderungen auf, die nicht nur für Webentwickler nützlich sind, sondern auch für Firefox- und Gecko-Entwickler sowie für Add-on-Entwickler.

Änderungen für Webentwickler

Entwicklerwerkzeuge

HTML

CSS

JavaScript

Schnittstellen/APIs/DOM

DOM & HTML DOM

  • Die Methode DOMTokenList.supports() wurde hinzugefügt (Firefox-Bug 1257849).
  • Die DOMTokenList.replace() Methode wurde hinzugefügt (Firefox-Bug 1224186).
  • Führende '?' Zeichen werden jetzt im Parameter des URLSearchParams() Konstruktors ignoriert (Firefox-Bug 1268361).
  • Der von URL.origin, HTMLAnchorElement.origin, und HTMLAreaElement.origin bereits für URL mit dem blob: Schema zurückgegebene Wert ist nicht länger fälschlicherweise null, sondern stattdessen der Herkunft der URL, gebildet durch das Entfernen des blob: Präfix (Firefox-Bug 1270451).
  • Im Vorbereitungsmodus gibt die Document.visibilityState Eigenschaft jetzt 'prerender' zurück (Firefox-Bug 1069772).
  • Die Window.isSecureContext Eigenschaft wurde implementiert (Firefox-Bug 1162772).
  • Die DOM4 Methoden Element.before, Element.after, Element.replaceWith, Element.append und Element.prepend wurden implementiert (Firefox-Bug 911477).
  • Die Methode TouchList.identifiedTouch() wurde entfernt (Firefox-Bug 1188539).
  • In der Standardeinstellung ist das scrollbars Merkmal aktiviert, wenn Window.open() aufgerufen wird. In der Vergangenheit wurde zwar dringend empfohlen, es zu aktivieren, es war jedoch nicht standardmäßig aktiviert (Firefox-Bug 1257887).
  • Die experimentelle und nicht standardisierte Methode HTMLMediaElement.seekToNextFrame(), die es ermöglicht, frameweise durch Videoinhalte zu navigieren, hinzugefügt (Firefox-Bug 1235301). Sie sind ermutigt, mit dieser Methode zu experimentieren, um zu verstehen, wie nützlich sie ist, aber verwenden Sie sie nicht in Produktionscode!
  • Die HTMLLabelElement.form Eigenschaft gibt jetzt das Formular zurück, mit dem das Steuerungselement des Labels assoziiert ist, wenn es ein Steuerungselement gibt (und wenn dieses Steuerungselement mit einem Formular assoziiert ist). Früher wurden Labels direkt mit Formularen über diese Eigenschaft assoziiert (Firefox-Bug 1268852).
  • Unterstützung für den dritten Parameter von EventTarget.addEventListener(), der entweder ein Boolean oder ein EventListenerOptions sein kann, wurde hinzugefügt (Firefox-Bug 1266164 und Firefox-Bug 1266066).
  • Die audio-Lautstärken-bezogenen Werte für KeyboardEvent.key wurden umbenannt. "VolumeDown" ist jetzt "AudioVolumeDown", "VolumeUp" ist jetzt "AudioVolumeUp", und "VolumeMute" ist jetzt "AudioVolumeMute". Dies bringt Firefox in Einklang mit dem neuesten Entwurf der UI Events Spezifikation (Firefox-Bug 1272578). Siehe Codewerte für Tastaturevents für eine vollständige Liste der verfügbaren Tastencodes.
  • Die Tasten, die früher als "MozHomeScreen", "MozCameraFocusAdjust", und "MozPhoneCall" bezeichnet wurden, haben jetzt offizielle Namen in der UI Events Spezifikation: "GoHome", "CameraFocus", und "Call". Firefox 49 wurde aktualisiert, um die neuen Namen zu verwenden (Firefox-Bug 1272599). Siehe Codewerte für Tastaturevents für eine vollständige Liste der verfügbaren Tastencodes.
  • Die Tastenwerte "Separator" und "MediaSkip" wurden entfernt, da sie veraltet und ungenutzt waren (Firefox-Bug 1232919).
  • Tastenwerte und die entsprechenden Tastencodes für "Hyper" und "Super" wurden hinzugefügt, um diese veralteten Modifikator-Tasten darzustellen (Firefox-Bug 1232919).
  • Zwei Tastenwerte für Multimedia-Zahlenblocktasten wurden hinzugefügt: "Key11" und "Key12" (Firefox-Bug 1232919).
  • Die folgenden neuen Tastenwerte wurden für Audiokontrolltasten hinzugefügt: "AudioBassBoostToggle", "AudioTrebleDown", und "AudioTrebleUp" (Firefox-Bug 123919).
  • Tastenwerte wurden für diese Mikrofon/ Audiokontrolltasten hinzugefügt: MicrophoneToggle, MicrophoneVolumeDown, MicrophoneVolumeUp, und MicrophoneVolumeMute (Firefox-Bug 123919).
  • Neue Tastenwerte wurden hinzugefügt, um die Unterstützung von Spracherkennungsgeräten zu erweitern: SpeechCorrectionList und SpeechInputToggle (Firefox-Bug 1232919).
  • Neue Tastenwerte wurden hinzugefügt, um spezielle Tasten auf Telefonen zu unterstützen: AppSwitch, Call, CameraFocus, EndCall, GoBack, GoHome, HeadsetHook, LastNumberRedial, Notification, MannerMode, und VoiceDial (Firefox-Bug 1232919).
  • Diese neuen Anwendungstastenwerte wurden hinzugefügt: LaunchContacts und LaunchPhone (Firefox-Bug 1232919).
  • Neue Tastenwerte wurden hinzugefügt, um Fernsehgeräte zu unterstützen: TV3DMode, TVAntennaCable, TVAudioDescription, TVAudioDescriptionMixDown, TVAudioDescriptionMixUp, TVContentsMenu, TVDataService, TVInput, TVInputComponent1, TVInputComponent2, TVInputComposite1, TVInputComposite2, TVInputHDMI1, TVInputHDMI2, TVInputHDMI3, TVInputHDMI4, TVInputVGA1, TVMediaContext, TVNetwork, TVNumberEntry, TVRadioService, TVSatellite, TVSatelliteBS, TVSatelliteCS, TVSatelliteToggle, TVTerrestrialAnalog, TVTerrestrialDigital, TVTimer, und DVR (Firefox-Bug 1232919).
  • Der Tastenwert MediaSelect wurde durch den Standardtastenwert LaunchMediaPlayer ersetzt (Firefox-Bug 1272592).
  • Weitere Mediaplayer-Tastenwerte wurden ebenfalls hinzugefügt. Diese sind MediaAudioTrack, MediaSkipBackward, MediaSkipForward, MediaStepBackward, MediaStepForward, MediaTopMenu, NavigateIn, NavigateNext, NavigateOut, und NavigatePrevious (Firefox-Bug 1232919).

Canvas

WebGL

IndexedDB

Service Worker und Verwandtes

  • Das [Redirected]-Eigenschaft der Fetch API's Response Objekt implementiert jetzt die redirected Eigenschaft, die angibt, ob die Antwort für eine Weiterleitungseingabe war oder nicht. Bitte lesen Sie die sicherheitsrelevanten Hinweise in der Dokumentation, bevor Sie diese Eigenschaft verwenden (Firefox-Bug 1243792).
  • In der Berechtigungen API, unterstützt Firefox nicht mehr den 'push' PermissionDescriptor Wörterbuchtyp (als PushPermissionDescriptor im Spezifikation bezeichnet); dies liegt daran, dass Firefox stattdessen ein Quotensystem zur Kontrolle des userVisibleOnly Status verwendet und einen Fehler auslöste, wenn es auf eine PushPermissionDescriptor Instanz traf (Firefox-Bug 1266821). Mit dem Entfernen dieses Wörterbuchs ignoriert Firefox es jetzt.

Mediastreams

  • In der Vergangenheit konnte ein Aufruf von MediaDevices.getUserMedia(), der sowohl Audio als auch Video anforderte, auch dann erfolgreich sein, wenn der Benutzer nur eine der beiden Hardware-Typen zur Verfügung hatte. Dies wurde behoben (Firefox-Bug 802326).
  • In früheren Versionen von Firefox war es möglich, dass ein Aufruf von MediaDevices.getUserMedia(), der sowohl Audio als auch Video anforderte, auch dann erfolgreich war, wenn der Benutzer den Zugriff auf ein, aber nicht beide, der passenden Geräte verweigerte. Dies wurde behoben (Firefox-Bug 802326). Dies beinhaltet auch kleine Änderungen in der Benutzeroberfläche, um die Optionen "Kein Audio" oder "Kein Video" zu entfernen, wenn der Benutzer nach Berechtigungen gefragt wird.
  • Die Methode MediaStream.getTrackById() wurde implementiert (Firefox-Bug 1208390).

WebRTC

  • Die Methode RTCPeerConnection.addTrack() wurde aktualisiert, um es zu ermöglichen, Tracks hinzuzufügen, die keine Komponenten der angegebenen Streams sind. Stattdessen werden die Streams verwendet, um Tracks am empfangsseitigen Ende der Verbindung zu gruppieren (Firefox-Bug 1271669).

Neue APIs

Andere

MathML

Keine Änderung.

SVG

  • Unterstützung für die veralteten <altGlyph>, <altGlyphDef> und <altGlyphItem> Elemente entfernt (Firefox-Bug 1260032).

Audio/Video

Keine Änderung.

Plugins und Flash

Beginnend mit Firefox 49 blockiert Firefox standardmäßig bestimmte Arten von Flash-Inhalten, die für das gute Funktionieren von Websites nicht erforderlich sind. Dieses Verhalten, gesteuert durch die Einstellung browser.safebrowsing.blockedURIs.enabled, trägt zur Verbesserung der Leistung von Websites und Firefox im Allgemeinen bei, ohne die Benutzerfreundlichkeit der Website wesentlich zu beeinträchtigen. Es trägt auch zur Stabilität des Browsing-Erlebnisses bei, indem es eine Hauptursache für Abstürze eliminiert. Die blockierten Flash-Module umfassen mehrere, die nur für Fingerprinting-Zwecke verwendet werden, sowie eine Reihe von "Supercookie"-Modulen, und in Zukunft kann diese möglicherweise erweitert werden, um mehr Arten von blockierten Modulen einzuschließen. Siehe Firefox-Bug 1275591 für Details.

Dies markiert den nächsten Schritt auf dem Weg zu einer zukunft ohne Plug-ins. HTML ist sehr nah an dem Punkt, an dem Plug-ins nicht mehr benötigt werden, um die Arbeit zu erledigen.

HTTP

Netzwerke

  • Die Proxy Auto-Configuration (PAC) Implementierung wurde aktualisiert. Jetzt unterstützen weekdayRange, dateRange, und timeRange "umgekehrte Bereiche", zum Beispiel, weekdayRange("SAT", "MON") wird werten true, wenn der aktuelle Tag Samstag, Sonntag oder Montag ist (Firefox-Bug 1251332).

Sicherheit

Kompatibilität

Um die Kompatibilität mit vorhandenen Inhalten zu verbessern, akzeptiert Firefox jetzt einige WebKit-präfixierte Eigenschaften und Attribute.

  • Die folgenden Eigenschaften funktionieren jetzt auch mit dem Präfix -webkit:

    • -webkit-align-items
    • -webkit-align-content
    • -webkit-align-self
    • -webkit-animation
    • -webkit-animation-delay
    • -webkit-animation-direction
    • -webkit-animation-duration
    • -webkit-animation-fill-mode
    • -webkit-animation-iteration-count
    • -webkit-animation-name
    • -webkit-animation-play-state
    • -webkit-animation-timing-function
    • -webkit-backface-visibility
    • -webkit-background-clip
    • -webkit-background-origin
    • -webkit-background-size
    • -webkit-border-bottom-left-radius
    • -webkit-border-bottom-right-radius
    • -webkit-border-image
    • -webkit-border-top-left-radius
    • -webkit-border-top-right-radius
    • -webkit-border-radius
    • -webkit-box-shadow
    • -webkit-filter
    • -webkit-flex
    • -webkit-flex-basis
    • -webkit-flex-direction
    • -webkit-flex-flow
    • -webkit-flex-grow
    • -webkit-flex-shrink
    • -webkit-flex-wrap
    • -webkit-justify-content
    • -webkit-order
    • -webkit-perspective
    • -webkit-perspective-origin
    • -webkit-text-size-adjust
    • -webkit-transform
    • -webkit-transform-origin
    • -webkit-transform-style
    • -webkit-transition
    • -webkit-transition-delay
    • -webkit-transition-duration
    • -webkit-transition-property
    • -webkit-transition-timing-function
    • -webkit-user-select
  • Die folgenden Eigenschaften werden auf die gleichwertige Attribute gemappt:

    • -webkit-box-flex
    • -webkit-box-ordinal-group
    • -webkit-box-orient
    • -webkit-box-align
    • -webkit-box-pack
  • Für <image> Werte:

    • Die folgenden Funktionen werden auf ihre unpräfigierten Äquivalente gemappt: -webkit-linear-gradient(), -webkit-radial-gradient(), -webkit-repeating-linear-gradient(), und -webkit-repeating-radial-gradient().
    • Der veraltete -webkit-gradient wird unterstützt (und in einen regulären Verlauf übersetzt)
  • Die folgenden display Werte werden übersetzt:

    • -webkit-box zu -moz-box
    • -webkit-flex zu flex
    • -webkit-inline-box zu inline-flex
    • -webkit-inline-flex zu -moz-inline-flex
  • Die folgenden Eigenschaften werden unterstützt (und nicht auf ein unpräfigiertes Äquivalent gemappt):

  • Die WebKitCSSMatrix Schnittstelle ist ein Alias von DOMMatrix

  • Die folgenden Medienabfrage-Features wurden implementiert:

    • -webkit-min-device-pixel-ratio als Alias von min-resolution mit demselben Wert (in dppx), obwohl diese Funktion standardmäßig deaktiviert ist (hinter about:config Einstellung layout.css.prefixes.device-pixel-ratio-webkit)
    • -webkit-max-device-pixel-ratio als Alias von max-resolution mit demselben Wert (in dppx); diese Funktion ist ebenfalls standardmäßig deaktiviert, hinter derselben about:config Einstellung.
    • -webkit-transform-3d immer übereinstimmend, was Unterstützung für 3D-Transformationen anzeigt.

Änderungen für Add-on- und Mozilla-Entwickler

WebExtensions

  • Unterstützung für die history wurde hinzugefügt. Dies bietet Zugriff auf den Browserverlauf, mit Methoden, die für die Suche im Verlauf, die Ermittlung von Informationen über zuvor besuchte Seiten und das Hinzufügen und Entfernen von Verlaufs-Einträgen verfügbar sind.
  • Die Methode tabs.removeCSS() wurde zur Tabs-API hinzugefügt. Diese Methode ermöglicht es Ihnen, CSS zu entfernen, das zuvor durch den Aufruf von tabs.insertCSS() eingefügt wurde.

Schnittstellen

Sonstiges

Keine Änderung.