Mozilla Firefox 38.0 Beta 5 今日发布,该版本将在今年5月份正式发布。除了继续优化对64位的支持外,最大的改进是原生支持Ruby字符。Ruby字符与Ruby语言无关,而是注音标示,是一种表意文字的音标印刷方式,广泛地运用于日文及中文,rubi是日本印刷业的用语。以前 Firefox浏览器支持注音标示需要安装扩展如HTML Ruby,如今Firefox 38默认启用了CSS Ruby,同时还引入了HTML5 ruby标签支持。
下载地址:
http://dm-download02.mozilla.org/pub/mozilla.org/mozilla.org/firefox/releases/38.0b4/
Developer Tools
Highlights:
All devtools bugs fixed between Firefox 37 and Firefox 38.
CSS
Support for
ruby-positionandruby-alignhave been added and is available by default (bug 1055676bug 1123917 and bug 1039006).The
:unresolvedpseudo-class have been implemented for custom elements (bug 1111633).The predefined style
ethiopic-numericnow uses a space, instead of a dot, as suffix to match a recent change to the spec (bug 1120721).CSS transitions on generated content (with
::beforeand::after) on both an inline and the block that splits them now start as expected by the spec (bug 1110277).The implementation of CSS Logical Properties made big progress. The following properties are available behind the
layout.css.vertical-text.enabledflag (falseby default):Direction-independant equivalents of
widthandheight:block-sizeandinline-size(bug 1117983).Direction-independant equivalents of
min-widthandmin-height:min-block-sizeandmin-inline-size(bug 1117983).Direction-independant equivalents of
max-widthandmax-height:max-block-sizeandmax-block-size(bug 1117983).Direction-independant equivalents of
margin-top,margin-right,margin-bottomandmargin-left:margin-block-start,margin-block-end,margin-inline-startandmargin-inline-end(bug 649142).Direction-independant equivalents of
padding-top,padding-right,padding-bottomandpadding-left:padding-block-start,padding-block-end,padding-inline-startandpadding-inline-end(bug 649142).Direction-independant equivalents of
border-top,border-right,border-bottomandborder-leftand their longhands for width, style and color:border-block-start,border-block-start-width,border-block-start-style,border-block-start-color,border-block-end,border-block-end-width,border-block-end-style,border-block-end-color,border-inline-start,border-inline-start-width,border-inline-start-style,border-inline-start-color,border-inline-end,border-inline-end-width,border-inline-end-styleandborder-inline-end-color(bug 649142).Direction-independant equivalents of
top,right,bottomandleft:offset-block-start,offset-block-end,offset-inline-startandoffset-inline-end(bug 1120283).How CSS Transitions start has been modified to match a recent change of the specifications, aiming at having an interoperable behavior between browsers (bug 960465).
HTML
Label element doesn't dispatch event to label target element if interactive content is found between the event target and the label (bug 229925).
The
<picture>element has been activated by default (bug 1017875).
JavaScript
Generator.prototype.return()is implemented (bug 1115868).Setterwith a rest parameter is now aSyntaxError(bug 1089632).The
nameproperty of functions is configurable now (bug 1084019).Several
Arraymethods have been implemented for typed arrays as well:The
of()andfrom()methods (bug 896608).The
forEach()method (bug 1107645).The
filter()andmap()methods (bug 1121936).The
slice()method (bug 1121935).Duplicated parameter name is no longer allowed when rest-parameter is present (bug 1096376).
Duplicated parameter name is no longer allowed in arrow functions (bug 1096377).
Duplicated parameter name is no longer allowed in concise method definitions (bug 1096378).
Warning is shown when
Map/Set/WeakMapconstructor is called withoutnew(bug 1108930).When defining a generator method, "
set" and "get" are no longer invalid names (bug 1073809).RegExp.prototype.sourcenow returns "(?:)" instead of an empty string for empty regular expressions (bug 1130798).RegExp.prototype.sourceandRegExp.prototype.toString()now escape regular expression patterns properly (e.g. line terminators, "n") (bug 1130860).The
Regexpglobal,ignoreCase,multiline,source, andstickyproperties are now prototype accessor properties rather than own data properties ofRegExpinstances (bug 1120169).Function.prototype.toString()now throws forProxyobjects (bug 1100936).
Interfaces/APIs/DOM
The Fetch API
fetch()method has been implemented (bug 1039846).BroadcastChannelhas been implemented (bug 966439 and bug 1121420).CanvasRenderingContext2D.clearHitRegions()has been implemented (bug 1119527).HTMLAnchorElement.hash,HTMLAreaElement.hash,Location.hash,WorkerLocation.hash, andURL.hashnow returns a percent-encoded fragment (bug 1093611 & bug 1122948).Constants of
KeyboardEvent.location,DOM_KEY_LOCATION_MOBILEand DOM_KEY_LOCATION_JOYSTICK, are dropped due to dropped from DOM Level 3 Spec (bug 936313.KeyboardEvent.codesupports special keys on Sun keyboard on Linux, Android and Firefox OS. (bug 1020139)KeyboardEvent.codeis enabled on release build. (bug 1126673)The
TextEncoder()constructor has been changed to match the spec: when an invalid parameter is passed, theRangeErrorexception is now raised, rather than the erroneousTypeError(bug 1125766).The User Timing API, adding
Performance.mark(),Performance.clearMarks(),Performance.measure(), andPerformance.clearMeasures()has been implemented (bug 782751).The prefixed version of
indexedDB,mozIndexedDBhas been removed (bug 975699).The
DOMContentLoadedevent is no longer cancelable (bug 1134559).You can now use WebSockets in Workers (bug 1112054).
The
XMLHttpRequest.responseTypeandXMLHttpRequest.withCredentialsproperties can now be set before callingXMLHttpRequest.open()(bug 707484).
MathML
No change.
SVG
No change.
Audio/Video
No change.
Networking
No change.
Security
In Firefox, the
autocomplete=falseattribute is now ignored when dealing with a login form (bug 1025703).RC4 is now disabled when using TLS, except for a few Web sites on a whitelist. This whitelist is an interim measure while the Web sites are fixed (bug 1124039).
Web sites needing to fallback to an insecure version of TLS to work are now in a hardcoded whitelist, that will shrink with time (bug 1114816). The whitelist can be disabled by setting
security.tls.insecure_fallback_hosts.use_static_listtofalse.
Changes for add-on and Mozilla developersAdd-on SDKHighlights
sdk/context-menu@2was implemented (bug 1070952).sdk/addon/bootstrapwas implemented (bug 1075541).sdk/windows/loaderwas removed (bug 970135).Fix for default language detection on Linux (bug 1114712).
toolkit/loadernow has opt-in module compatibility checking, which is enabled for all jpm add-ons (bug 1037235).
E10S Updates
sdk/page-worker e10s updates (bug 1116004).
sdk/content/worker e10s updates (bug 1116544).
sdk/tabs e10s updates (bug 1033838).
Details
XUL
No change.
JavaScript code modulesDownloads.jsm
DownloadTargetobjects now haveexistsandsizeproperties, allowing you to determine the existence of and the size of the download's target file on disk, as well as a newrefresh()method, which asks that these values be updated.
XPCOM
"@mozilla.org/network/atomic-file-output-stream;1"and"@mozilla.org/network/safe-file-output-stream;1"now throws an exception ifPR_APPENDis passed withoutPR_TRUNCATE(bug 1117580).nsICompositionStringSynthesizerand nsIDOMWindowUtils.sendCompositionEvent() are now dropped. Instead, usensITextInputProcessor. (bug 917322)nsIDOMWindowUtils.sendKeyEvent()is now deprecated. Instead, usensITextInputProcessor. (bug 1119609)