Firefox 25 for developers

  • Revision slug: Mozilla/Firefox/Releases/25
  • Revision title: Firefox 25 for developers
  • Revision id: 470377
  • Created:
  • Creator: myakura
  • Is current revision? No
  • Comment

Revision Content

This page is not complete
Firefox 25 hasn't reached its feature freeze yet. New features will be added to it in the near future.

{{ ReleaseChannelInfo("25", "25", "October 2013", "Beta") }}

Want to help document Firefox 25? See the list of bugs that need to be written about and pitch in!

Changes for Web developers

CSS

  • The support for the keyword local as a value of the {{cssxref("background-attachment")}} CSS property has been added ({{bug("483446")}}).
  • Support of a non-standard Mozilla-only media query to determine the operating system version has been added: -moz-os-version ({{bug("810399")}}). The property is currently only implemented on Windows.
  • The {{cssxref("-moz-osx-font-smoothing")}} CSS property has been added ({{bug("857142")}})

HTML

  • The {{htmlattrxref("srcdoc", "iframe")}} attribute of {{HTMLElement("iframe")}}, allowing the inline specification of the content of an {{HTMLElement("iframe")}}, is now supported ({{bug("802895")}}).
  • When used with a "image/jpeg" type, the method HTMLCanvasElement.toBlob now accepts a third attribute defining the quality of the image ({{bug("891884")}}).

JavaScript

EcmaScript 6 (Harmony) implementation continues!

  • The method Array.of() are implemented on Array ({{bug("866849")}}).
  • The methods Number.parseInt() and Number.parseFloat() are implemented ({{bug("886949")}})
  • The methods Map.prototype.forEach() and Set.prototype.forEach() are implemented ({{bug("866847")}})
  • New mathematical methods have been implemented on Math: Math.log10(), Math.log2(), Math.log1p(), Math.expm1(), Math.cosh(), Math.sinh(), Math.tanh(), Math.acosh(), Math.asinh(), Math.atanh(), Math.hypot(), Math.trunc(), Math.sign() and Math.cbrt() ({{bug("717379")}}).
  • Support for binary and octal integer literals has been added: 0b10101010, 0B1010, 0o777, 0O237 are now valid ({{bug("894026")}}).
  • The machine epsilon constant, that is s the smallest representible number that added to 1 will not be 1, is now available as Number.EPSILON ({{bug("885798")}}).

The EcmaScript Internationalization API is now available ({{bug("853301")}}).

Interfaces/APIs/DOM

  • The Web Audio API is now supported. An incomplete implementation was previously available behind a preference ({{bug("779297")}}).
  • Some IME related keys on Windows are supported by KeyboardEvent.key ({{bug("865565")}}), see the key name table for the detail.
  • Firefox for Metro now dispatches key events in the same way as the desktop version ({{bug("843236")}}).
  • keypress event is no longer dispatched if preventDefault() of preceding keydown event is called ({{bug("501496")}}), see the document of keydown event for the detail.
  • Renamed the Future interface to Promise ({{bug("884279")}}).
  • The srcDoc property on the {{domxref("HTMLIFrameElement")}} interface, allowing the inline specification of the content of an {{HTMLElement("iframe")}}, is now supported ({{bug("802895")}}).
  • The createTBody() method on the {{domxref("HTMLTableElement")}} interface, allowing to get its {{HTMLElement("tbody")}}, is now supported ({{bug("813034")}}).
  • The {{domxref("Range.collapse()")}} method toStart parameter is now optional and default to false, like defined in the spec ({{bug("891340")}}).
  • Support of {{domxref("ParentNode")}} interface on {{domxref("Document")}} and {{domxref("DocumentFragment")}} has been added ({{bug("895974")}}).
  • The previousElementSibling and nextElementSibling have been moved to {{domxref("ChildNode")}} allowing them to be called not only on a {{domxref("Element")}} object but also on a {{domxref("CharacterData")}} or {{domxref("DocumentType")}} object ({{bug("895974")}}).
  • The navigator.geolocation property has been updated to match the spec. It never returns null. When the preference geo.enabled is set to false, it now returns undefined ({{bug("884921")}}).
  • The videoPlaybackQuality attribute on the {{ domxref("HTMLVideoElement") }} interface has been changed to the getVideoPlaybackQuality method. ({{bug(889205)}})

MathML

No change.

SVG

No change.

See also

Older versions

{{Firefox_for_developers('24')}}

Revision Source

<div class="overheadIndicator draft draftHeader">
  <strong>This page is not complete</strong>
  <div>
    Firefox 25 hasn't reached its feature freeze yet. New features will be added to it in the near future.</div>
</div>
<p>{{ ReleaseChannelInfo("25", "25", "October 2013", "Beta") }}</p>
<p>Want to help document Firefox 25? See the <a class="external" href="http://beta.elchi3.de/doctracker/#list=fx&amp;version=25.0">list of bugs that need to be written about</a> and pitch in!</p>
<h2 id="Changes_for_Web_developers">Changes for Web developers</h2>
<h3 id="CSS">CSS</h3>
<ul>
  <li>The support for the keyword <code>local</code> as a value of the {{cssxref("background-attachment")}} CSS property has been added ({{bug("483446")}}).</li>
  <li>Support of a non-standard Mozilla-only media query to determine the operating system version has been added: <code><a href="/en-US/docs/Web/Guide/CSS/Media_queries#-moz-os-version" title="/en-US/docs/Web/Guide/CSS/Media_queries#-moz-os-version">-moz-os-version</a></code> ({{bug("810399")}}). The property is currently only implemented on Windows.</li>
  <li>The {{cssxref("-moz-osx-font-smoothing")}} CSS property has been added ({{bug("857142")}})</li>
</ul>
<h3 id="HTML">HTML</h3>
<ul>
  <li>The {{htmlattrxref("srcdoc", "iframe")}} attribute of {{HTMLElement("iframe")}}, allowing the inline specification of the content of an {{HTMLElement("iframe")}}, is now supported ({{bug("802895")}}).</li>
  <li>When used with a <code>"image/jpeg"</code> type, the method <code>HTMLCanvasElement.toBlob</code> now accepts a third attribute defining the quality of the image ({{bug("891884")}}).</li>
</ul>
<h3 id="JavaScript">JavaScript</h3>
<p><a href="/en-US/docs/Web/JavaScript/ECMAScript_6_support_in_Mozilla" title="/en-US/docs/Web/JavaScript/ECMAScript_6_support_in_Mozilla">EcmaScript 6</a> (Harmony) implementation continues!</p>
<ul>
  <li>The method <code>Array.of()</code> are implemented on <code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array" title="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array">Array</a></code> ({{bug("866849")}}).</li>
  <li>The methods <span id="summary_alias_container"><span id="short_desc_nonedit_display"><code>Number.parseInt()</code> and <code>Number.parseFloat()</code> are implemented ({{bug("886949")}})</span></span></li>
  <li>The methods <span id="summary_alias_container"><span id="short_desc_nonedit_display"><code>Map.prototype.forEach()</code> and <code>Set.prototype.forEach()</code> are implemented ({{bug("866847")}})</span></span></li>
  <li>New mathematical methods have been implemented on <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math" title="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math"><code>Math</code></a>: <code>Math.log10()</code>, <code>Math.log2()</code>, <code>Math.log1p()</code>, <code>Math.expm1()</code>, <code>Math.cosh()</code>, <code>Math.sinh()</code>, <code>Math.tanh()</code>, <code>Math.acosh()</code>, <code>Math.asinh()</code>, <code>Math.atanh()</code>, <code>Math.hypot()</code>, <code>Math.trunc()</code>, <code>Math.sign()</code> and <code>Math.cbrt()</code> ({{bug("717379")}}).</li>
  <li>Support for binary and octal integer literals has been added: <code>0b10101010</code>, <code>0B1010</code>, <code>0o777</code>, <code>0O237</code> are now valid ({{bug("894026")}}).</li>
  <li>The machine epsilon constant, that is <font class="quoteHeader" style="">s the smallest representible number that added to 1 will not be 1,</font> is now available as <code>Number.EPSILON</code> ({{bug("885798")}}).</li>
</ul>
<p>The EcmaScript Internationalization API is now available ({{bug("853301")}}).</p>
<h3 id="Interfaces.2FAPIs.2FDOM">Interfaces/APIs/DOM</h3>
<ul>
  <li>The <a href="/en-US/docs/Web_Audio_API" title="/en-US/docs/Web_Audio_API">Web Audio API</a> is now supported. An incomplete implementation was previously available behind a preference ({{bug("779297")}}).</li>
  <li>Some IME related keys on Windows are supported by <code>KeyboardEvent.key</code> ({{bug("865565")}}), see <a href="/en-US/docs/Web/API/KeyboardEvent#keyname_table_win" title="/en-US/docs/Web/API/KeyboardEvent#keyname_table_win">the key name table</a> for the detail.</li>
  <li>Firefox for Metro now dispatches key events in the same way as the desktop version ({{bug("843236")}}).</li>
  <li><code>keypress</code> event is no longer dispatched if <code>preventDefault()</code> of preceding <code>keydown</code> event is called ({{bug("501496")}}), see <a href="/en-US/docs/Web/Reference/Events/keydown#preventDefault()_of_keydown_event" title="/en-US/docs/Web/Reference/Events/keydown#preventDefault()_of_keydown_event">the document of <code>keydown</code> event</a> for the detail.</li>
  <li>Renamed the <code>Future</code> interface to <code>Promise</code> ({{bug("884279")}}).</li>
  <li>The <code>srcDoc</code> property on the {{domxref("HTMLIFrameElement")}} interface, allowing the inline specification of the content of an {{HTMLElement("iframe")}}, is now supported ({{bug("802895")}}).</li>
  <li>The <code>createTBody()</code> method on the {{domxref("HTMLTableElement")}} interface, allowing to get its {{HTMLElement("tbody")}}, is now supported ({{bug("813034")}}).</li>
  <li>The {{domxref("Range.collapse()")}} method <code>toStart</code> parameter is now optional and default to <code>false</code>, like defined in the spec ({{bug("891340")}}).</li>
  <li>Support of {{domxref("ParentNode")}} interface on {{domxref("Document")}} and {{domxref("DocumentFragment")}} has been added ({{bug("895974")}}).</li>
  <li>The <code>previousElementSibling</code> and <code>nextElementSibling</code> have been moved to {{domxref("ChildNode")}} allowing them to be called not only on a {{domxref("Element")}} object but also on a {{domxref("CharacterData")}} or {{domxref("DocumentType")}} object ({{bug("895974")}}).</li>
  <li>The <code>navigator.geolocation</code> property has been updated to match the spec. It never returns <code>null</code>. When the preference <code>geo.enabled</code> is set to <code>false</code>, it now returns <code>undefined</code> ({{bug("884921")}}).</li>
  <li>The <code>videoPlaybackQuality</code> attribute on the {{ domxref("HTMLVideoElement") }} interface has been changed to the <code>getVideoPlaybackQuality</code> method. ({{bug(889205)}})</li>
</ul>
<h3 id="MathML">MathML</h3>
<p><em>No change.</em></p>
<h3 id="SVG">SVG</h3>
<p><em>No change.</em></p>
<h2 id="See_also">See also</h2>
<ul>
  <!-- <li><a href="http://www.mozilla.org/en-US/firefox/25.0a2/auroranotes/">Firefox 25 Aurora Notes</a></li> -->
  <li><a href="/en-US/docs/Mozilla/Firefox/Releases/25/Site_Compatibility">Site Compatibility for Firefox 25</a></li>
</ul>
<h3 id="Older_versions">Older versions</h3>
<p>{{Firefox_for_developers('24')}}</p>
Revert to this revision