Firefox 44 для разработчиков
Установить Firefox Developer EditionFirefox 44 был выпущен 26 января 2016 года.
В этой статье перечислены ключевые изменения, которые полезны не только для веб-разработчиков, но и для разработчиков Firefox и Gecko, а также для разработчиков приложений.
Изменения, для Веб разработчиков
Инструменты разработчика
- Added keyboard shortcut S to scroll the selected node into view in the HTML pane of the Page Inspector (баг 1203147).
HTML
<link rel="prefetch">
now obeys thecrossorigin
attribute (баг 1214819).
CSS
position:
fixed;
now always creates a new stacking context (баг 1179288).- The support of
unicode-range
(en-US) has been enabled by default (баг 1119062). - Our experimental implementation of CSS Writing Modes has been updated to reflect the latest specification:
- The value
sideways
of thetext-orientation
(en-US) property has been implemented andsideways-right
has been made an alias of it (баг 1193488). - The value
sideways-rl
andsideways-lr
of thewriting-mode
property (баг 1193488 and баг 1193519).
- The value
- The non-standard properties
-moz-math-display
and-moz-window-shadow
are no more available from Web content (баг 1207002, баг 1211040, and баг 1212607). - The
font-style
property now distinguishes betweenoblique
anditalic
when both variants are available (баг 543715). - Though not supported, the properties
marks
(en-US),orphans
,page
,size
, andwidows
, were parsed and@supports
was incorrectly reporting them as supported; this has been fixed and the properties are not parsed anymore, nor marked as supported (баг 1215702). - The internal value
-moz-mac-unified-toolbar
has been removed from the possible values for the-moz-appearance
(en-US) property (баг 1206468). - The
font-style
property now makes the distinction betweenoblique
anditalic
: if both faces are present the correct one is now selected (баг 543715).
JavaScript
New APIs
Symbol.toPrimitive
,Symbol.prototype[@@toPrimitive]
, andDate.prototype[@@toPrimitive]
(en-US) have been implemented (баг 1054756).
Changes
- The
let
andconst
bindings in the global level have been made compliant with ES2015 semantics. See баг 589199 and the blog post "Breaking changes in let and const in Firefox Nightly 44". In addition,let
is now available to default Web JavaScript (strict and non-strict) and does not require a version opt-in anymore (баг 932517). - If typed arrays' (like
Int8Array
) andArrayBuffer
) constructors are called as a function without thenew
operator, aTypeError
is now thrown as per the ES6 specification (баг 980945, баг 1214936). - The
RegExp
sticky flag now follows the ES2015 standard for anchored sticky regular expressions (баг 773687). - The JavaScript shell (SpiderMonkey's REPL) now defaults to the default, Web-compatible JS version (and not JS1.7+ anymore) (баг 1192329).
Removals
- Support for the non-standard
let
blocks has been dropped (баг 1167029. - The non-standard and deprecated property
Object.prototype.__noSuchMethod__
has been removed (баг 683218).
Interfaces/APIs/DOM
DOM & HTML DOM
- For compatibility with specific existing sites, the property
Document.charset
(en-US) has been implemented as an alias ofDocument.characterSet
(баг 647621). - Support for the
window.sidebar.addSearchEngine()
method, which allowed Web pages to invoke an installation of a Sherlock plugin, has been dropped and now it just logs a warning in the Web Console (баг 862148). - To fight unwanted pop-ups, prompts requested in
Window.onbeforeunload
(en-US) of pages that have not been interacted with are no more displayed (баг 636905). - The deprecated method
MessageEvent.initMessageEvent()
has been reimplemented for backward compatibility (баг 949376). - The obsolete
DocumentType.internalSubset
has been removed (баг 801545). - For compatibility with existing sites, the properties
Window.orientation
(en-US),Window.onorientationchange
, as well as theorientationchange (en-US)
event have been implemented (баг 920734). - Iframe with explicit fullscreen request should not exit fullscreen implicitly (баг 1187801).
- The events
mouseover (en-US)
,mouseout (en-US)
,mouseenter (en-US)
,mouseleave (en-US)
,pointermove
,pointerover
,pointerout
,pointerenter
andpointerleave
are now triggered for disabled form elements (баг 218093). - The method
Element.webkitMatchesSelector()
has been added (баг 1216193). -
To match the spec, the method
Document.createAttribute()
now lowercases the input (баг 1176313).
WebGL
- Uniform Buffer Objects have been implemented (баг 1048747).
IndexedDB
- The
IDBIndex.getAll()
(en-US) andIDBIndex.getAllKeys()
(en-US) are now available by default (баг 1196841).
Service Workers
- The
ServiceWorkerMessageEvent
(en-US) andExtendableMessageEvent
(en-US) interfaces have been implemented (баг 1143717 and баг 1207068). Headers
(en-US) objects now support a pair iterator, meaning that the methodsHeaders.entries()
(en-US),Headers.keys()
(en-US), andHeaders.values()
(en-US) are now available;Symbol.iterator
now also returns the default iterator for them (баг 1108181).- The
XMLHttpRequest
API has been disabled on Service Workers (баг 931243). - The interface
FetchEvent
now extendsExtendableEvent
, giving it access to theExtendableEvent.waitUntil()
method. (баг 1214772). - Following a recent change in the specification,
FetchEvent.client
(en-US) has been removed (баг 1218135). - To match the latest specification, the
ServiceWorkerContainer.onreloadpage
has been removed (баг 1218139). - The event handlers
ServiceWorkerGlobalScope.onbeforeevicted
andServiceWorkerGlobalScope.onevicted
have been removed as they weren't following the spec. They will be reintroduced in the future, but their removal will allow feature detection to work as expected (баг 1218142). - In the
FetchEvent()
(en-US) constructor, if theisReload
member is not present in the options dictionary, it now defaults tofalse
(баг 1216401). - The
Client.frameType
(en-US) property is now implemented on the right interface; it was onWindowClient
before (баг 1218146). - When AppCache is used to provide offline support for a page, a warning message is now displayed in the console advising developers to use Service workers instead (баг 1204581.)
- Service workers have been enabled by default in Gecko.
WebRTC
- WebRTC interfaces have been unprefixed (баг 1155923). In particular:
mozRTCPeerConnection
is nowRTCPeerConnection
.mozRTCIceCandidate
is nowRTCIceCandidate
(en-US).mozRTCSessionDescription
is nowRTCSessionDescription
(en-US).
- The
RTCDataChannel.bufferedAmountLowThreshold
(en-US) andRTCDataChannel.onbufferedamountlow
(en-US) properties, as well as thebufferedamountlow
event, have been implemented (баг 1178091). - The attribute
RTCPeerConnection.canTrickleIceCandidates
has been added, the non-standard methodRTCPeerConnection.updateIce()
removed (баг 1209744). - The
MediaStream
interface now supports theMediaStream.addTrack()
(en-US) andMediaStream.removeTrack()
methods (баг 1103188). - The constructor
MediaStream()
(en-US) has been implemented (баг 1070216).
New APIs
- An experimental implementation of the Canvas API in Workers has landed:
OfflineCanvas
andHTMLCanvasElement.transferControlToOffscreen()
are available behind thegfx.offscreencanvas.enabled
preference, currently disabled by default (баг 709490). - The Text2Speech API, part of Web Speech API, has now an OS X backend. But this is disabled by default (баг 1003452).
Miscellaneous
URLSearchParams
objects now support a pair iterator, meaning that the methodsURLSearchParams.entries()
(en-US),URLSearchParams.keys()
(en-US), andURLSearchParams.values()
(en-US) are now available;Symbol.iterator
now also returns the default iterator for them (баг 1085284).FormData
objects now support a pair iterator, meaning that the methodsFormData.entries()
,FormData.keys
, andFormData.values()
are now available;Symbol.iterator
now also returns the default iterator for them (баг 1127703).- When
XMLHttpRequest.send()
is used with an HTML document, it now usestext/html
instead ofapplication/xml
(баг 918771). - Speech synthesis (text-to-speech) has been implemented in Firefox Desktop for Mac and Linux, hidden behind the
media.webspeech.synth.enabled
flag inabout:config
(баг 1003452, баг 1003464.) See Web Speech API for more information. - Elements inside a <frame> (en-US) or an <object> (en-US) can't be set full-screen anymore (баг 1212299).
MathML
No change.
SVG
No change.
Audio/Video
No change.
HTTP
- Support for the Brotli algorithm has been added and both
Accept-Encoding
andContent-Encoding
headers now support thebr
value (баг 366559 and баг 1211916). - Incorrect support of HTTP/2 headers containing line breaks (
'/n'
) have been removed as the spec doesn't allow it, unlike HTTP/1 (баг 1197847).
Networking
No change.
Security
- RC4 is now also disabled by default on Beta and Release versions of the browser (баг 1201025).
Changes for add-on and Mozilla developers
Interfaces
No change
XUL
No change.
JavaScript code modules
- Added
LIKE
support to Sqlite.jsm (баг 1188760). - Added Snackbars.jsm module to Firefox for Android (баг 1215026)
XPCOM
No change.
Other
No change.
See also
Older versions
- Firefox 43 для разработчиков
- Firefox 42 для разработчиков (en-US)
- Firefox 41 для разработчиков (en-US)
- Firefox 40 для разработчиков (en-US)
- Firefox 39 для разработчиков (en-US)
- Firefox 38 для разработчиков (en-US)
- Firefox 37 для разработчиков (en-US)
- Firefox 36 для разработчиков (en-US)
- Firefox 35 для разработчиков (en-US)
- Firefox 34 для разработчиков (en-US)
- Firefox 33 для разработчиков
- Firefox 32 для разработчиков
- Firefox 31 для разработчиков
- Firefox 30 для разработчиков (en-US)
- Firefox 29 для разработчиков
- Firefox 28 для разработчиков
- Firefox 27 для разработчиков (en-US)
- Firefox 26 для разработчиков (en-US)
- Firefox 25 для разработчиков (en-US)
- Firefox 24 для разработчиков (en-US)
- Firefox 23 для разработчиков (en-US)
- Firefox 22 для разработчиков (en-US)
- Firefox 21 для разработчиков (en-US)
- Firefox 20 для разработчиков (en-US)
- Firefox 19 для разработчиков (en-US)
- Firefox 18 для разработчиков (en-US)
- Firefox 17 для разработчиков (en-US)
- Firefox 16 для разработчиков (en-US)
- Firefox 15 для разработчиков (en-US)
- Firefox 14 для разработчиков (en-US)
- Firefox 13 для разработчиков (en-US)