mozilla

Revision 525599 of Firefox 28 for developers

  • Revision slug: Mozilla/Firefox/Releases/28
  • Revision title: Firefox 28 for developers
  • Revision id: 525599
  • Created:
  • Creator: fscholz
  • Is current revision? No
  • Comment editorial review

Revision Content

{{ ReleaseChannelInfo("28", "28", "March 2014", "Beta") }}

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

Changes for Web developers

Developer Tools

  • The {{domxref("console.exception")}} property has been added ({{bug("922214")}}).

CSS

  • Support for multi-line flexbox has been added ({{bug("939901")}}).
  • Longhand East Asian counter styles have been implemented ({{bug("934072")}}).
  • Support for the {{cssxref("background-blend-mode")}} property has been added ({{bug("841601")}}).
  • The none value has been added to {{cssxref("font-variant-ligatures")}} ({{bug("913264")}}).
  • Support for the {{cssxref(":hover")}} user action pseudo-class on pseudo-elements has been implemented ({{bug("922669")}}).

HTML

  • WebVTT has been switched on by default ({{bug("887978")}}).
  • <input type=color> has been implemented.

JavaScript

  • ECMAScript 6 (Harmony) implementation continues:
    • New Array methods have been implemented: {{jsxref("Array.prototype.entries()")}} and {{jsxref("Array.prototype.keys()")}} ({{bug("894658")}}).

Interfaces/APIs/DOM

  • HTMLVideoElement.canPlayType('video/webm') now reports maybe. ({{bug("884275")}}).
  • The {{domxref("DocumentFragment.getElementById()")}} method has been implemented. E.g. document.createDocumentFragment().getElementById() ({{bug("933193")}}).
  • The {{domxref("KeyboardEvent.repeat")}} attribute has been implemented ({{bug("600117")}}).
  • The {{domxref("File")}} constructor, e.g. new File(["foo"], "foo.txt") has been implemented. ({{bug("819900")}}).
  • The {{domxref("NavigatorPlugins.plugins", "navigator.plugins")}} is no more enumerable, for privacy reasons ({{bug(757726)}}).
  • The two attributes {{domxref("Window.screenX")}} and {{domxref("Window.screenY")}} now return CSS pixels (and no more device pixels) ({{bug(943668)}}).
  • The {{domxref("GamePad")}} API has been activated by default ({{bug(878828)}}).
  • The two methods {{domxref("CanvasRenderingContext2D.drawSystemFocusRing()")}} and {{domxref("CanvasRenderingContext2D.drawCustomFocusRing()")}} have been implemented. The preference canvas.focusring.enabled must be set to true to activate both ({{bug(540456)}}).
  • The following attributes have been added to {{domxref("NavigatorID")}}: {{domxref("NavigatorID.appCodeName", "appCodeName")}} and {{domxref("NavigatorID.product", "product")}} ({{bug(925847)}}).

MathML

  • Support of the mathvariant attribute has been added ({{bug("114365")}}).

SVG

No change.

Audio/Video

  • Opus in WebM is now supported ({{bug("887978")}}).
  • The VP9 video decoder is now supported ({{bug("833023")}}).

Network

  • Support of SPDY/2 has been removed.

Changes for addon and Mozilla developers

  • The interface of DeferredTask.jsm has been changed, and the isPending(), start(), flush(), and cancel() methods have been removed ({{bug("940408")}}).

Security

  • CSP was not enforced in sandboxed iframes. This has been fixed ({{bug(886164)}}).
  • The CSP 1.1 experimental script-nonce directive has been implemented. The preference security.csp.experimentalEnabled should be set to true to enable this functionality ({{bug(855326)}}).

See also

Older versions

{{Firefox_for_developers('27')}}

Revision Source

<p>{{ ReleaseChannelInfo("28", "28", "March 2014", "Beta") }}</p>
<p>Want to help document Firefox 28? See the <a class="external" href="http://beta.elchi3.de/doctracker/#list=fx&amp;version=28.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="Developer_Tools">Developer Tools</h3>
<ul>
 <li>The {{domxref("console.exception")}} property has been added ({{bug("922214")}}).</li>
</ul>
<h3 id="CSS">CSS</h3>
<ul>
 <li>Support for multi-line <a href="/en-US/docs/Web/Guide/CSS/Flexible_boxes">flexbox</a> has been added ({{bug("939901")}}).</li>
 <li><span id="summary_alias_container"><span id="short_desc_nonedit_display">Longhand East Asian <a href="/en-US/docs/Web/CSS/list-style-type">counter styles</a></span></span> have been implemented ({{bug("934072")}}).</li>
 <li><span id="summary_alias_container"><span id="short_desc_nonedit_display">Support for the {{cssxref("background-blend-mode")}} property has been added</span></span> ({{bug("841601")}}).</li>
 <li>The <code>none</code> value has been added to {{cssxref("font-variant-ligatures")}} ({{bug("913264")}}).</li>
 <li>Support for the {{cssxref(":hover")}} user action pseudo-class on pseudo-elements has been implemented ({{bug("922669")}}).</li>
</ul>
<h3 id="HTML">HTML</h3>
<ul>
 <li><a href="/en-US/docs/HTML/WebVTT">WebVTT</a> has been switched on by default ({{bug("887978")}}).</li>
 <li><code>&lt;input type=color&gt;</code> has been implemented.</li>
</ul>
<h3 id="JavaScript">JavaScript</h3>
<ul>
 <li><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:
  <ul>
   <li>New <code>Array</code> methods have been implemented: {{jsxref("Array.prototype.entries()")}} and {{jsxref("Array.prototype.keys()")}} ({{bug("894658")}}).</li>
  </ul>
 </li>
</ul>
<h3 id="Interfaces.2FAPIs.2FDOM">Interfaces/APIs/DOM</h3>
<ul>
 <li><span id="summary_alias_container"><span id="short_desc_nonedit_display"><code>HTMLVideoElement.canPlayType('video/webm')</code> now reports <code>maybe</code>.</span></span> ({{bug("884275")}}).</li>
 <li>The {{domxref("DocumentFragment.getElementById()")}} method has been implemented. E.g. <code>document.createDocumentFragment().getElementById()</code> ({{bug("933193")}}).</li>
 <li>The {{domxref("KeyboardEvent.repeat")}} attribute has been implemented ({{bug("600117")}}).</li>
 <li>The {{domxref("File")}} constructor, e.g.&nbsp;<code>new File(["foo"], "foo.txt")</code> has been implemented. ({{bug("819900")}}).</li>
 <li>The {{domxref("NavigatorPlugins.plugins", "navigator.plugins")}} is no more enumerable, for privacy reasons ({{bug(757726)}}).</li>
 <li>The two attributes {{domxref("Window.screenX")}} and {{domxref("Window.screenY")}} now return CSS pixels (and no more device pixels) ({{bug(943668)}}).</li>
 <li>The {{domxref("GamePad")}} API has been activated by default ({{bug(878828)}}).</li>
 <li>The two methods {{domxref("CanvasRenderingContext2D.drawSystemFocusRing()")}} and {{domxref("CanvasRenderingContext2D.drawCustomFocusRing()")}} have been implemented. The preference <code>canvas.focusring.enabled</code> must be set to <code>true</code> to activate both ({{bug(540456)}}).</li>
 <li>The following attributes have been added to {{domxref("NavigatorID")}}: {{domxref("NavigatorID.appCodeName", "appCodeName")}} and {{domxref("NavigatorID.product", "product")}} ({{bug(925847)}}).</li>
</ul>
<h3 id="MathML">MathML</h3>
<ul>
 <li>Support of <span id="summary_alias_container"><span id="short_desc_nonedit_display">the </span></span><code>mathvariant</code> attribute has been added ({{bug("114365")}}).</li>
</ul>
<h3 id="SVG">SVG</h3>
<p><em>No change.</em></p>
<h3 id="Audio.2FVideo">Audio/Video</h3>
<ul>
 <li><span id="summary_alias_container"><span id="short_desc_nonedit_display">Opus in WebM</span></span> is now supported ({{bug("887978")}}).</li>
 <li><span id="summary_alias_container"><span id="short_desc_nonedit_display">The VP9 video decoder</span></span> is now supported ({{bug("833023")}}).</li>
</ul>
<h3 id="Network">Network</h3>
<ul>
 <li>Support of <code>SPDY/2</code> has been removed.</li>
</ul>
<h2 id="Changes_for_addon_and_Mozilla_developers">Changes for addon and Mozilla developers</h2>
<ul>
 <li>The interface of <a href="/en-US/docs/Mozilla/JavaScript_code_modules/DeferredTask.jsm">DeferredTask.jsm</a> has been changed, and the <code>isPending()</code>, <code>start()</code>, <code>flush()</code>, and <code>cancel()</code> methods have been removed ({{bug("940408")}}).</li>
</ul>
<h2 id="Security">Security</h2>
<ul>
 <li>CSP was not enforced in sandboxed iframes. This has been fixed ({{bug(886164)}}).</li>
 <li>The CSP 1.1 experimental <code>script-nonce</code> directive has been implemented. The preference <code>security.csp.experimentalEnabled</code> should be set to <code>true</code> to enable this functionality ({{bug(855326)}}).</li>
</ul>
<h2 id="See_also">See also</h2>
<ul>
 <li><a href="/en-US/docs/Mozilla/Firefox/Releases/28/Site_Compatibility">Site Compatibility for Firefox 28</a></li>
</ul>
<h3 id="Older_versions">Older versions</h3>
<p>{{Firefox_for_developers('27')}}</p>
Revert to this revision