Firefox 10 for developers

  • Revision slug: Firefox_10_for_developers
  • Revision title: Firefox 10 for developers
  • Revision id: 29651
  • Created:
  • Creator: teoli
  • Is current revision? No
  • Comment 1 words added, 1 words removed

Revision Content

{{ draft() }}

{{ ReleaseChannelInfo("10") }}

Changes for Web developers

HTML

  • The new HTML5 {{ HTMLElement("bdi") }} element, bi-directional isolation, allowing isolation of parts of text with a different directionality has been implemented. This is especially useful when displaying text with an unknown directionality, coming from a database for example, in the middle of text with a known, and potentially, different one.

JavaScript

  • The method WeakMap.set() now returns undefined, instead of itself.

DOM

DOM3 Events

  • The DOM Event method event.stopImmediatePropagation has been implemented.
  • The mouse events {{ domeventxref("mouseenter") }} and {{ domeventxref("mouseleave") }} have been implemented.

DOM4

  • The attribute document.xmlVersion (which was only gettable and not settable) has been removed as it has been deprecated in the DOM4 Specification (see {{ bug("693162") }}). Instead, use DOMImplementation.hasFeature("XMLVersion", "1.0") and DOMImplementation.hasFeature("XMLVersion", "1.1") respectively.
  • The attribute document.xmlStandalone has been removed as it has been deprecated in the DOM4 Specification.
  • The attribute {{ domxref("document.xmlEncoding") }} has been removed as it has been deprecated in the DOM4 Specification.
  • The attribute {{ domxref("text.isElementContentWhiteSpace") }} has been removed as it has been deprecated in the DOM4 Specification.
  • The method {{ domxref("text.replaceWholeText") }} has been removed as it has been deprecated in the DOM4 Specification.
  • The method {{ domxref("node.isSameNode") }} has been removed as it has been deprecated in DOM4 Specification. Instead of node1.isSameNode(node2) use node1 === node2.

Web Workers

  • The attribute XMLHttpRequest.responseType and XMLHttpRequest.response are not available from inside Workers.
  • The Worker() constructor now accepts data URIs.

IndexedDB

Great progress has been made to update IndexedDB to the latest draft specification. This effort will continue in Firefox 11.

Other

CSS

  • Two new values for the CSS property {{ cssxref("unicode-bidi") }} have been added: -moz-isolation and -moz-plaintext. The -moz-isolation value isolates, from a directionality point of view, the element from its environment, letting it have a different directionality. An element with unicode-bidi:-moz-isolation behaves like a {{ HTMLElement("bdi") }} element. The -moz-plaintext indicates the browser to use the Unicode browser heuristic to determine directionality and not the CSS {{ cssxref("direction") }} property.

Dev Tools

  • The console object has two new methods time() and timeEnd() allowing to set timers on a page.

Changes for Mozilla and add-on developers

Manifests

  • Support for <em:strictCompatibility> has been added to the install manifest. It allows add-ons authors to opt in to checking the maximum version of their extension. If set to true the add-on will be disabled if the application version is greater than <em:maxVersion>. Firefox 10 lets users opt to default to add-ons being compatible, regardless of their specified maximum version. This flag overrides that preference. See XXX. Need to write an article about this, and/or update the existing add-on docs!

XUL

See also

{{ languages( { "ja": "ja/Firefox_10_for_developers" } ) }}

Revision Source

<p>{{ draft() }}</p>
<p>{{ ReleaseChannelInfo("10") }}</p>
<h2>Changes for Web developers</h2>
<h3>HTML</h3>
<ul> <li>The new HTML5 {{ HTMLElement("bdi") }} element, bi-directional isolation, allowing isolation of parts of text with a different directionality has been implemented. This is especially useful when displaying text with an unknown directionality, coming from a database for example, in the middle of text with a known, and potentially, different one.</li>
</ul>
<h3>JavaScript</h3>
<ul> <li>The method <code><a href="/en/JavaScript/Reference/Global_Objects/WeakMap" title="https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/WeakMap">WeakMap</a>.set()</code> now returns <em><code>undefined</code></em>, instead of itself.</li>
</ul>
<h3>DOM</h3>
<h4>DOM3 Events</h4>
<ul> <li>The DOM Event method <a href="/en/DOM/event.stopImmediatePropagation" title="event.stopImmediatePropagation"><code>event.stopImmediatePropagation</code></a> has been implemented.</li> <li>The mouse events {{ domeventxref("mouseenter") }} and {{ domeventxref("mouseleave") }} have been implemented.</li>
</ul>
<h4>DOM4</h4>
<ul> <li>The attribute <code><a href="/en/DOM/document.xmlVersion" title="en/DOM/document.xmlVersion">document.xmlVersion</a></code> (which was only gettable and not settable) has been removed as it has been deprecated in the DOM4 Specification (see {{ bug("693162") }}). Instead, use <code>DOMImplementation.hasFeature("XMLVersion", "1.0")</code> and <code>DOMImplementation.hasFeature("XMLVersion", "1.1")</code> respectively.</li> <li>The attribute <code>document.xmlStandalone</code> has been removed as it has been deprecated in the DOM4 Specification.</li> <li>The attribute {{ domxref("document.xmlEncoding") }} has been removed as it has been deprecated in the DOM4 Specification.</li> <li>The attribute {{ domxref("text.isElementContentWhiteSpace") }} has been removed as it has been deprecated in the DOM4 Specification.</li> <li>The method {{ domxref("text.replaceWholeText") }} has been removed as it has been deprecated in the DOM4 Specification.</li> <li>The method {{ domxref("node.isSameNode") }} has been removed as it has been deprecated in DOM4 Specification. Instead of <code><em>node1</em>.isSameNode(<em>node2</em>)</code> use <code><em>node1 </em>===</code><code><em> node2</em></code>.</li>
</ul>
<h4>Web Workers</h4>
<ul> <li>The attribute <code>XMLHttpRequest.responseType</code> and <code>XMLHttpRequest.response</code> are not available from inside <a href="/En/DOM/Worker/Functions_available_to_workers#section_2" title="https://developer.mozilla.org/En/DOM/Worker/Functions_available_to_workers#section_2">Workers</a>.</li> <li>The <a href="/En/DOM/Worker#Worker()" title="En/DOM/Worker#Worker()"><code>Worker()</code></a> constructor now accepts <a href="/en/data_URIs" title="data URIs">data URIs</a>.</li>
</ul>
<h4>IndexedDB</h4>
<p>Great progress has been made to update IndexedDB to the latest draft specification. This effort will continue in Firefox 11.</p>
<ul> <li>The <a href="/en/IndexedDB/IDBIndex#count" title="en/IndexedDB/IDBIndex#count"><code>IDBIndex.count()</code></a> and <a href="/en/IndexedDB/IDBObjectStore#count" title="en/IndexedDB/IDBObjectStore#count"><code>IDBObjectStore.count()</code></a> methods has been added.</li> <li>The <a href="/en/IndexedDB/IDBCursor#advance" title="en/IndexedDB/IDBCursor#advance"><code>IDBCursor.advance()</code></a> method has been added.</li> <li>When encountering an unknown optional parameter in <a href="/en/IndexedDB/IDBObjectStore#createIndex" title="https://developer.mozilla.org/en/IndexedDB/IDBObjectStore#createIndex"><code>IDBObjectStore.createIndex()</code></a> or <a href="/en/IndexedDB/IDBDatabase#createObjectStore" title="en/IndexedDB/IDBDatabase#createObjectStore"><code>IDBDatabase.createObjectStore()</code></a>, Gecko will not fire an exception anymore, but simply ignore it.</li> <li>When <a href="/en/IndexedDB/IDBTransaction#abort%28%29" title="https://developer.mozilla.org/en/IndexedDB/IDBTransaction#abort%28%29"><code>IDBTransaction.abort()</code></a> is called, all pending <a href="/en/IndexedDB/IDBRequest" title="IDBRequest"><code>IDBRequest</code></a> have their <code>errorCode</code> set to <code>ABORT_ERROR</code>.</li> <li>The method <code>IDBDatabase.setVersion()</code> has been removed as it was removed from the latest spec. The version of the database is given through the <code>IDBFactory.open()</code> method which has been updated and the <code>onupgradeneeded </code>callback allows the schema of the database to be upgraded. The version itself has been changed from a <code>DOMString</code> to an <code>unsigned long long</code>. The <a href="/en/IndexedDB/IDBVersionChangeRequest" title="en/IndexedDB/IDBVersionChangeRequest"><code>IDBVersionChangeRequest</code></a> has been removed and replaced by the new <a href="/en/IndexedDB/IDBOpenDBRequest" title="en/IndexedDB/IDBOpenDBRequest"><code>IDBOpenDBRequest</code></a>.</li>
</ul><h4>Other</h4>
<ul> <li>When the proper MIME types is passed, <code>text/svg+xml</code>, <a href="/en/DOM/DOMParser#Parsing_a_SVG_document" title="https://developer.mozilla.org/en/DOM/DOMParser#Parsing_a_SVG_document">the <code>DOMParser</code> now creates a <code>SVGDocument</code></a> when given a string with SVG.</li>
</ul>
<h3>CSS</h3>
<ul> <li>Two new values for the CSS property {{ cssxref("unicode-bidi") }} have been added: <code>-moz-isolation</code> and <code>-moz-plaintext</code>. The <code>-moz-isolation</code> value isolates, from a directionality point of view, the element from its environment, letting it have a different directionality. An element with <code>unicode-bidi:-moz-isolation</code> behaves like a {{ HTMLElement("bdi") }} element. The <code>-moz-plaintext</code> indicates the browser to use the Unicode browser heuristic to determine directionality and not the CSS {{ cssxref("direction") }} property.</li>
</ul>
<h3>Dev Tools</h3>
<ul> <li>The <a href="/en/Using_the_Web_Console" title="https://developer.mozilla.org/en/Using_the_Web_Console"><code>console</code></a> object has two new methods <code>time()</code> and <code>timeEnd()</code> allowing to set timers on a page.</li>
</ul>
<h2>Changes for Mozilla and add-on developers</h2>
<h3>Manifests</h3>
<ul> <li>Support for <a href="/en/Install_Manifests#strictCompatibility" title="en/Install_Manifests#strictCompatibility"><code>&lt;em:strictCompatibility&gt;</code></a> has been added to the install manifest. It allows add-ons authors to opt in to checking the maximum version of their extension. If set to <code>true</code> the add-on will be disabled if the application version is greater than <code>&lt;em:maxVersion&gt;</code>. Firefox 10 lets users opt to default to add-ons being compatible, regardless of their specified maximum version. This flag overrides that preference. See XXX. <strong>Need to write an article about this, and/or update the existing add-on docs!</strong></li>
</ul>
<h3>XUL</h3>
<ul> <li>Bootstrapped add-ons using a <a href="/en/Chrome_Registration" title="en/chrome.manifest">chrome.manifest</a> file now have the manifest file registered automatically. See the section <a href="/en/Extensions/Bootstrapped_extensions#Adding_user_interface_with_a_chrome.manifest" title="en/Extensions/Bootstrapped_extensions#Adding_user_interface_with_a_chrome.manifest">Adding user interface with a chrome.manifest</a> for details.</li>
</ul>
<h3>See also</h3>
<ul> <li><a href="/en/Firefox_9_for_developers" title="en/Firefox 9 for developers">Firefox 9 for developers</a></li> <li><a href="/en/Firefox_8_for_developers" title="en/Firefox 8 for developers">Firefox 8 for developers</a></li> <li><a href="/en/Firefox_7_for_developers" title="en/Firefox 7 for developers">Firefox 7 for developers</a></li> <li><a href="/en/Firefox_6_for_developers" title="en/Firefox 6 for developers">Firefox 6 for developers</a></li> <li><a href="/en/Firefox_5_for_developers" title="en/Firefox 5 for developers">Firefox 5 for developers </a></li> <li><a href="/en/Firefox_4_for_developers" title="en/Firefox 4 for developers">Firefox 4 for developers </a></li> <li><a href="/en/Firefox_3.6_for_developers" title="en/Firefox 3.6 for developers">Firefox 3.6 for developers </a></li> <li><a href="/En/Firefox_3.5_for_developers" title="en/Firefox 3.5 for developers">Firefox 3.5 for developers</a></li> <li><a href="/en/Firefox_3_for_developers" title="en/Firefox 3 for developers">Firefox 3 for developers</a></li> <li><a href="/en/Firefox_2_for_developers" title="en/Firefox 2 for developers">Firefox 2 for developers</a></li> <li><a href="/en/Firefox_1.5_for_developers" title="en/Firefox 1.5 for developers">Firefox 1.5 for developers</a></li>
</ul>
<p>{{ languages( { "ja": "ja/Firefox_10_for_developers" } ) }}</p>
Revert to this revision