Firefox 17 shipped on November 20, 2012. This article lists key changes that are useful for not only web developers, but also Firefox and Gecko developers as well as add-on developers.
Changes for Web developers
HTML
- Support for the
sandbox
attribute on the<iframe>
element has been added. (bug 341604)
CSS
- Support for
@supports
at-rule defined in CSS3 Conditional Rules specification has been landed. It is disabled by default. Developers can try it by settinglayout.css.supports-rule.enabled
to true (bug 649740). - Support for the CSS Selectors Level 4 pseudo-class
:dir()
allowing selection of elements based on their directionality has landed. (bug 562169) - Support for the newly specified
isolate-override
value of the CSSunicode-bidi
value has landed (bug 774335) - Our prefixed implementation of
box-sizing
now takes into accountmin-height
andmax-height
. One step closer to its unprefixing (bug 308801)
DOM/APIs
- Support for
CSSSupportsRule
interface defined in CSS3 Conditional Rules specification has been landed (bug 649740) - Support for
WheelEvent
object andwheel
event have been landed (bug 719320). - Support DOM Meta key on Linux again (bug 751749).
- On
HTMLMediaElement
, a new method,mozGetMetadata
, that returns a javascript object whose properties represent metadata from the playing media resource as {key: value} pairs (bug 763010). - Support for
Range.intersectsNode
has been added again; it has been removed in Gecko 1.9 (bug 579638. Range.compareBoundaryPoints()
now throws aDOMException
with theNOT_SUPPORTED_ERR
value when the comparison method is invalid (bug 714279) .Event.initEvent()
has been adapted to the spec: it doesn't throw anymore if called after the dispatch of the event, it is only a no-op (bug 768310).- The non-standard
XMLHttpRequest.onuploadrequest
property has been removed (bug 761278). - The method
XMLHttpRequest.getAllResponseHeaders()
now separates them with a CRLF (instead of a LF), as requested by the spec (bug 730925).
JavaScript
String
object now offers HarmonystartsWith
,endsWith
, andcontains
methods (bug 772733).- The String methods link and anchor now escape the
'"'
(quotation mark) (bug 352437). - Experimental support for strawman
ParallelArray
object has been implemented (bug 778559). - Support to iterate
Map
/Set
(bug 725909). - Disabled E4X for web content by default (bug 778851).
__exposedProps__
must now be set for Chrome JavaScript objects exposed to content. Attempts to access Chrome objects from content without__exposedProps__
set will fail silently (bug 553102).for..of
loops now work in terms of.iterator()
and.next()
(bug 725907).
WebGL
- The
EXT_texture_filter_anisotropic
WebGL extension has been unprefixed. Using"MOZ_EXT_texture_filter_anisotropic"
will present a warning from now on. The prefixed name is going to be removed in a future release (bug 776001).
SVG
No change.
MathML
- The parsing of the
align
attribute on<mtable>
elements has been updated to treat optional spaces more correctly.
XUL
- XUL key element supports "os" modifier which is Win key (Super or Hyper key) (bug 778732).
Network
- Removed the the non-standard feature
XMLHttpRequest.onuploadprogress
which was deprecaed in Firefox 14.
No change.
Developer tools
- Change JSTerm's $ helper function from getElementById to querySelector() (bug 751749).
User Agent
The Gecko part of the user agent string changed. The build date (which hadn't been updated since 2010) was removed, and the Gecko version number was put in its place instead. So Gecko/20100101
-> Gecko/17.0
. This may affect you if you are doing user agent sniffing.
Changes for add-on and Mozilla developers
Interface changes
nsIInputStream
- The
available()
method returns 64-bit length instead of 32-bit (bug 215450). nsIDOMWindowUtils
- The
sendMouseScrollEvent()
method has been replaced withsendWheelEvent()
(bug 719320). nsIFilePicker
- The
open()
method, to open the file dialog asynchronously, has been added and theshow()
method has been deprecated (bug 731307). nsIScriptSecurityManager
- The
checkLoadURIStr()
andcheckLoadURI()
methods have been removed (bug 327244). nsIRefreshURI
- The
setupRefreshURIFromHeader()
method has a addedprincipal
parameter (bug 327244).
New interfaces
None.
Removed interfaces
None removed.
See also
- Firefox 17 Release Notes
- Aurora 17 it out, bringing better security and support for new standards (Mozilla Hacks)
- Site Compatibility for Firefox 17
- Add-on Compatibility for Firefox 17 (Add-ons Blog)