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 Entwickler-Features von Firefox zu testen, installieren Sie Firefox Developer Edition Firefox 49 wurde am 20. September 2016 veröffentlicht. Dieser Artikel listet wichtige Änderungen auf, die nicht nur für Web-Entwickler nützlich sind, sondern auch für Firefox- und Gecko-Entwickler sowie Add-on-Entwickler.

Änderungen für Webentwickler

Entwickler-Tools

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 Wert zurückgegeben von URL.origin, HTMLAnchorElement.origin, und HTMLAreaElement.origin für URLs, die das blob: Schema verwenden, ist nicht mehr fälschlicherweise null, sondern stattdessen der Ursprung der URL, indem das führende blob: entfernt wird (Firefox-Bug 1270451).
  • Im Prerendering-Modus 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).
  • Standardmäßig ist die scrollbars Window Funktion aktiviert, wenn Window.open() aufgerufen wird. In der Vergangenheit war es zwar dringend empfohlen, sie zu aktivieren, sie war jedoch nicht standardmäßig eingestellt (Firefox-Bug 1257887).
  • Die experimentelle und nicht standardisierte Methode HTMLMediaElement.seekToNextFrame() wurde hinzugefügt, die es ermöglicht, frameweise durch Videoinhalte zu suchen (Firefox-Bug 1235301). Auch wenn Sie ermutigt werden, mit dieser Methode zu experimentieren, um uns zu helfen, ihre Nützlichkeit zu verstehen, verwenden Sie sie nicht im Produktionscode!
  • Die HTMLLabelElement.form Eigenschaft gibt jetzt das Formular zurück, dem das Steuerungselement des Labels zugeordnet ist, falls ein solches Steuerungselement existiert (und wenn dieses Steuerungselement einem Formular zugeordnet ist). Zuvor wurden Labels direkt mit Formularen über diese Eigenschaft verknüpft (Firefox-Bug 1268852).
  • Unterstützung für den dritten Parameter von EventTarget.addEventListener(), entweder eine Boolean oder ein EventListenerOptions, wurde hinzugefügt (Firefox-Bug 1266164 und Firefox-Bug 1266066).
  • Die audio Lautstärke bezogenen Werte für KeyboardEvent.key wurden umbenannt. "VolumeDown" ist jetzt "AudioVolumeDown", "VolumeUp" ist jetzt "AudioVolumeUp", und "VolumeMute" ist jetzt "AudioVolumeMute". Dies bringt Firefox mit dem neuesten Entwurf der UI Events Spezifikation in Einklang (Firefox-Bug 1272578). Siehe Codewerte für Tastaturereignisse für eine vollständige Liste der verfügbaren Tastencodes.
  • Die Tasten, die zuvor als "MozHomeScreen", "MozCameraFocusAdjust", und "MozPhoneCall" bekannt waren, 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 Tastaturereignisse für eine vollständige Liste der verfügbaren Tastencodes.
  • Die Tastencodes "Separator" und "MediaSkip" wurden entfernt, da sie veraltet und unbenutzt waren (Firefox-Bug 1232919).
  • Tastencodes und die entsprechenden Tastencodes "Hyper" und "Super" wurden hinzugefügt, um diese Legacy-Modifikatortasten darzustellen (Firefox-Bug 1232919).
  • Zwei neue Tastencodes für Multimedia-Nummernblocktasten wurden hinzugefügt: "Key11" und "Key12" (Firefox-Bug 1232919).
  • Die folgenden neuen Tastencodes wurden für Audiosteuerungstasten hinzugefügt: "AudioBassBoostToggle", "AudioTrebleDown", und "AudioTrebleUp" (Firefox-Bug 123919).
  • Tastencodes wurden für diese Mikrofonsteuerungstasten hinzugefügt: MicrophoneToggle, MicrophoneVolumeDown, MicrophoneVolumeUp, und MicrophoneVolumeMute (Firefox-Bug 123919).
  • Neue Tastencodes wurden hinzugefügt, um Sprachsteuerungsgeräte zu unterstützen: SpeechCorrectionList und SpeechInputToggle (Firefox-Bug 1232919).
  • Neue Tastencodes 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 Anwendungstastencodes wurden hinzugefügt: LaunchContacts und LaunchPhone (Firefox-Bug 1232919).
  • Neue Tastencodes 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 Tastencode MediaSelect wurde mit dem Standardtastencode LaunchMediaPlayer ersetzt (Firefox-Bug 1272592).
  • Zusätzliche Mediendidaktstastencodes wurden ebenfalls hinzugefügt. Diese sind MediaAudioTrack, MediaSkipBackward, MediaSkipForward, MediaStepBackward, MediaStepForward, MediaTopMenu, NavigateIn, NavigateNext, NavigateOut, und NavigatePrevious (Firefox-Bug 1232919).

Canvas

WebGL

IndexedDB

Service Workers und verwandte

  • Das Fetch API Response Objekt implementiert nun die redirected Eigenschaft, die angibt, ob die Antwort für eine Anforderung ist, die umgeleitet wurde. Bitte beachten Sie die sicherheitsrelevanten Hinweise in der Dokumentation, bevor Sie diese Eigenschaft verwenden (Firefox-Bug 1243792).
  • In der Permissions API unterstützt Firefox den 'push' PermissionDescriptor-Dictionary-Typ (in der Spezifikation als PushPermissionDescriptor bezeichnet) nicht mehr; dies liegt daran, dass Firefox ein Quotensystem zur Steuerung des userVisibleOnly-Status anstelle dessen verwendet und ein Fehler auftrat, wenn eine Instanz von PushPermissionDescriptor entdeckt wurde (Firefox-Bug 1266821). Mit diesem entfernten Dictionary ignoriert Firefox es jetzt.

Media Streams

  • In der Vergangenheit konnte ein Aufruf von MediaDevices.getUserMedia(), der sowohl Audio als auch Video anfordert, in Fällen erfolgreich sein, in denen der Benutzer nur einen der beiden verfügbaren Hardwaretypen hat. Dies wurde behoben (Firefox-Bug 802326).
  • In früheren Versionen von Firefox konnte ein Aufruf von MediaDevices.getUserMedia(), der sowohl Audio als auch Video anfordert, erfolgreich sein, selbst wenn der Benutzer den Zugriff auf ein, aber nicht beides der passenden Geräte verweigert hat. Dies wurde behoben (Firefox-Bug 802326). Dies umfasst auch kleinere Änderungen an der Benutzeroberfläche, um die Optionen "Kein Audio" oder "Kein Video" zu entfernen, wenn der Benutzer nach Berechtigungen gefragt wird.
  • Die MediaStream.getTrackById() Methode wurde implementiert (Firefox-Bug 1208390).

WebRTC

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

Neue APIs

Andere

MathML

Keine Änderungen.

SVG

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

Audio/Video

Keine Änderungen.

Plugins und Flash

Ab Firefox 49 blockiert Firefox standardmäßig bestimmte Arten von Flash-Inhalten, die nicht notwendig sind, damit Websites gut funktionieren. Dieses Verhalten, das durch die Einstellung browser.safebrowsing.blockedURIs.enabled gesteuert wird, trägt dazu bei, die Leistung von Websites und Firefox im Allgemeinen zu verbessern, ohne signifikante Auswirkungen auf die Benutzerfreundlichkeit der Website zu haben. Es trägt auch zur Stabilität des Browsing-Erlebnisses bei, indem es eine Hauptursache für Abstürze beseitigt. Die blockierten Flash-Module umfassen mehrere, die nur für Fingerabdruckzwecke verwendet werden, sowie eine Reihe von "Supercookie"-Modulen und können in Zukunft auch zusätzliche Arten von blockierten Modulen umfassen. Siehe Firefox-Bug 1275591 für Details.

Dies markiert den nächsten Schritt auf dem Weg in eine pluginfreie Zukunft. HTML ist sehr nah an dem Punkt, an dem Plugins nicht mehr benötigt werden, um die Arbeit zu erledigen.

HTTP

Netzwerk

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

Sicherheit

Kompatibilität

Zur Verbesserung der Kompatibilität mit bestehenden Inhalten 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 entsprechende neueigene Eigenschaft abgebildet:

    • -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äfixierten Äquivale abgebildet: -webkit-linear-gradient(), -webkit-radial-gradient(), -webkit-repeating-linear-gradient(), und -webkit-repeating-radial-gradient().
    • Das veraltete -webkit-gradient wird unterstützt (und in einen regulären Farbverlauf umgesetzt)
  • 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 werden nicht zu einem unpräfixierten Äquivalent abgebildet):

  • 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 dem gleichen Wert (in dppx), obwohl dieses Feature standardmäßig deaktiviert ist (hinter der about:config Präferenz layout.css.prefixes.device-pixel-ratio-webkit)
    • -webkit-max-device-pixel-ratio als Alias von max-resolution mit dem gleichen Wert (in dppx); dieses Feature ist auch standardmäßig deaktiviert, hinter der gleichen about:config Präferenz.
    • -webkit-transform-3d immer zutreffend, 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 zum Suchen des Verlaufs, Abrufen von Informationen über zuvor besuchte Seiten und Hinzufügen und Entfernen von Verlaufseinträgen.
  • Die Methode tabs.removeCSS() wurde zur Tabs-API hinzugefügt. Diese Methode ermöglicht es, CSS zu entfernen, das zuvor durch Aufrufen von tabs.insertCSS() eingefügt wurde.

Schnittstellen

Sonstiges

Keine Änderungen.