- Bug 816298 – Change "-moz-user-select:none" to behave like WebKit, IE, and Opera (and "-moz-user-select:-moz-none")
Previously, when you set the
none keyword to the
-moz-user-select property, the text of on the element and sub-elements became unselectable, even if one of those sub-elements had
-moz-user-select:text. Starting with Firefox 21,
none behaves like
-moz-none and other browsers, so selection can be re-enabled on sub-elements using
- Bug 835169 – Do we need support for the table[cols] attribute?
- Bug 835439 – Remove support for the table[layout] attribute
Firefox no longer accepts the
layout properties on the table (en-US) elements. No other browsers support these obscure properties.
The scrollWidth (en-US) and
scrollHeight properties might have wrong values when CSS
overflow:visible was set on the element. This behavior has been fixed to match the values as if
overflow:hidden is set.
Setting indexed expandos (custom properties which have number as the property name) on the
window object is no longer allowed. Your code like
window = "myString" will be ignored from now on.
iframes in the DOM were not enumerable on the
window object. This behavior has been changed to comply with the spec, which means they are now returned with
Object.keys(window). This is important to note for things like global leak detection, since appending
iframes to the document will modify the enumerable keys on the
- Bug 819051 – XMLHttpRequest.setRequestHeader() overwrites instead of combines values for the same header.
Previously, if the same headers were repeatedly set with
XMLHttpRequest.setRequestHeader, the last-specified value was used. This behavior has been changed to comply with the spec, so those values will be properly combined.
- Bug 787095 – Update formMethod reflection to have the empty string as default value (and 'get' as invalid value)
- Bug 839171 – Update formMethod reflection to have the empty string as default value (and 'get' as invalid value)
If multiple rules was passed to the CSSStyleSheet.insertRule (en-US) method, only the first rule was inserted into the stylesheet. Instead, Firefox now throws an exception
SYNTAX_ERR like other browsers.
The expandEntityReferences (en-US) property, which returned a flag indicating whether or not the children of entity reference nodes were visible to the object, has been removed from the NodeIterator (en-US) and TreeWalker (en-US) objects, as it never made much sense.
One of the methods of the CSSKeyframesRule (en-US) interface,
insertRule has been renamed to
appendRule to match a spec change.
- Bug 857355 – Hide HTMLInputElement's inputMode API behind a pref and only turn it on for Aurora/Nightly
inputmode API, which has been implemented since Firefox 17, is now disabled by default because the spec is still unstable. You have to enable the
dom.forms.inputmode pref or use the Aurora channel to try out this feature. Note that this API will be renamed
M) in Firefox 22 (en-US).
The parseInt (en-US) method implementation has been updated to conform to the ECMAScript 5 spec, and it now parses leading-zero strings as decimal, not octal. Therefore,
parseInt("042") will return
42 instead of
34. If you'd like to parse strings as octal, specify the radix like
The String.localeCompare (en-US) method implementation has been updated to conform to the latest ECMAScript 5 spec. If no argument is passed, the method takes the
"undefined" string as the argument.
Unimplemented SVG features have been removed instead of just returning the
NOT_IMPLEMENTED errors. These features include the
currentView properties of SVGSVGElement (en-US).
mozAudioContext implementation has been unprefixed. It's still disabled by default, though. To try out this feature, change the value of the
media.webaudio.enabled pref to
- Bug 746978 – sync CSP directive parsing and directive names with w3c CSP 1.0 spec
- Bug 783049 – CSP : use existing/old parser for X-Content-Security-Policy header, new/CSP 1.0 spec compliant parser for Content-Security-Policy header
Content Security Policy (CSP) 1.0 spec has been implemented. The existing parser will be used when a policy is served via the
X-Content-Security-Policy header, and the new parser that follows the 1.0 spec will be used when a policy is served via the officially spec'd
Content-Security-Policy header. Consult the latest spec if you'd like to implement CSP on your site. The documents on MDN will be updated sometime soon.