Mozilla 发布 Mozilla Firefox 40.0 的 Beta 1 版本,基于 Gecko 40 内核开发,40 版本的最大改进是有望带来类似 Chrome 的多进程设计,这样可以提升内存的利用率从而提升性能和标签/窗口之间的稳定性(但最新的版本似乎并没有带来),新设计的标签页可以自动判断和展示您认为感兴趣的内容,正式版本预计8月11日发布。
下载地址:
http://dm-download02.mozilla.org/pub/mozilla.org/mozilla.org/firefox/releases/40.0b1/
Web developersDeveloper Tools 方面的改进:
值得关注的更新:
- Improvements to the Animations view
- Get help from MDN for CSS property syntax
- Edit filters in the Page Inspector
- Web Console now shows messages from workers
- Filter requests by URL in the Network Monitor
- Many new context menu options in the Network Monitor
- Show when network resources are fetched from the browser cache
- Filter rules in the Page Inspector
其他:
- Break at debugger; statements in unnamed eval sources
- Copy URL/Open in New Tab context menu items for Debugger source list pane
- console.dirxml support in the Web Console
- Style Editor: “Open Link In New Tab” item added to stylesheet list
- Inspector selector search now includes class/id results even without css prefix
- Tooltips in box-model view saying which CSS rule caused the value
- Switch between color unit format in the Inspector using Shift+click
- Implement “Scroll Into View” menu item for the Inspector
- Linkify url/id/resource attributes in the Inspector
- IP address tooltip in the Network Monitor
完整改进:all devtools bugs fixed between Firefox 39 and Firefox 40.
CSS
- Prefixed rules (
-moz-
) fortext-decoration-color
,text-decoration-line
, andtext-decoration-style
have been removed (bug 1097922). - The property
text-align
now supports thematch-parent
value (bug 645642). - In Quirks Mode,
empty-cells
now defaults toshow
, like in standard mode (bug 1020400). - The
-moz-orient
non-standard property, used to style<meter>
and<progress>
element has been adapted for vertical writing-modes: the valueauto
has been dropped and the valuesinline
andblock
added, withinline
being the new default value (bug 1028716).
JavaScript
- Unreachable code after
return
statement (including unreachable expression aftersemicolon-less return statements) will now show a warning in the console (bug 1005110,bug 1151931). Symbol.match
has been added (bug 1054755).- Passing an object which has a property named
Symbol.match
with a truthy value toString.prototype.startsWith
,String.prototype.endsWith
, andString.prototype.contains
now throws aTypeError
(bug 1054755). RegExp
function returns pattern itself if called withoutnew
and pattern object has a property namedSymbol.match
with a truthy value, and the pattern object’sconstructor
property equals toRegExp
function. (bug 1147817).- Support for the non-standard JS1.7 destructuring for-in has been dropped (bug 1083498).
- Non-standard initializer expressions in for…in loops are now ignored and will present a warning in the console. (bug 748550 and bug 1164741).
\u{xxxxxx}
Unicode code point escapes have been added (bug 320500).String.prototype.contains
has been replaced withString.prototype.includes
,String.prototype.contains
is kept as an alias (bug 1102219).- If the
DataView
constructor is called as a function without thenew
operator, aTypeError
is now thrown as per the ES6 specification. - An issue regressed in Firefox 21, where proxyfied arrays without the
get
trap were not working properly, has been fixed. If theget
trap in aProxy
was not defined,Array.length
returned0
and theset
trap didn’t get called. A workaround was to add theget
trap even if was not necessary in your code. This issue has been fixed now (bug 895223). WeakMap.prototype
andWeakSet.prototype
have been updated to be just ordinary objects, per ES6 specification (bug 1055473).
Interfaces/APIs/DOMNew APIs
- The Push API has been implemented (bug 1038811).
Web Animations API
Improvement in our experimental Web Animations implementation, mostley to match latest spec changes:
AnimationPlayer.currentTime
now can also be set (bug 1072037).Animatable.getAnimationPlayers()
, available onElement
has been renamed toElement.getAnimations()
(bug 1145246).Animation
andAnimationEffect
have been merged into the newly createdKeyframeEffectReadOnly
(bug 1153734).AnimationPlayer
has been renamed toAnimation
(bug 1154615).AnimationTimeline
is now an abstract class, withDocumentTimeline
its only implementation (bug 1152171).
CSSOM
- The CSS Font Loading API is now enabled by default in Nightly and Developer Edition releases (bug 1088437). It is still deactivated by default in Beta and Release browsers.
- The
CSSCharsetRule
interface has been removed and such objects are no longer available in CSSOM (bug 1148694). This matches the spec (recently adapted) and Chrome behavior.
WebRTC
- WebRTC: the
negotiationneeded
event is now also sent for initial negotiations, not only for re-negotiations (bug 1149838).
DOM & HTML DOM
- When unable to parse the
srcset
, theHTMLImageElement.currentSrc
method doesn’t returnnull
anymore but""
, as requested by the latest specification (bug 1139560). - Like for images, Firefox now throttle
Window.requestAnimationFrame()
for non-visible<iframe>
(bug 1145439). Navigator.taintEnabled
is no longer available for Web workers (bug 1154878).- The read-only properties
MouseEvent.offsetX
andMouseEvent.offsetY
have been implemented bug 69787.
Web Audio API
New extensions to the Web Audio API:
- The
AudioContext.state
andAudioContext.onstatechange
properties as well as the methodsAudioContext.suspend()
,AudioContext.resume()
, andAudioContext.close()
have been added (bug 1094764). AudioBufferSourceNode
now implements theAudioBufferSourceNode.detune
k-rateattribute (bug 1153783).
Web Workers
- Slight improvement in our Service Worker API: the
update()
method has been moved fromServiceWorkerGlobalScope
toServiceWorkerRegistration
(bug 1131350). ServiceWorkerRegistration
is now available in Web workers (bug 1131327).DataStore
is now available in Web workers (bug 949325).
IndexedDB
IDBTransaction
are now non-durable by default (bug 1112702). This favors performance over reliability and matches what other browsers are doing. For more information, read ourdurability definition.
Dev Tools
- The property
Console.timeStamp
has been added (bug 922221).
JavaScript 代码模块
- Dict.jsm has been removed bug 1123309. Use
Map
instead.