Firefox 15 for developers 發行說明
Firefox 15 於 2012 年 8 月 28 日釋出。本文件列出了對 Web 開發者、Firefox 和 Gecko 開發者以及附加元件開發者都很有用的重要變更。
面向網路開發者的變更
HTML
- 現在,
<font>元素的size屬性將按照 HTML5 規範進行處理。這意味著所有大於 10 或小於 -10 的整數值現在分別被視為等同於 10 和 -10。 - 已移除對
<font>元素上的font-weight和point-size屬性的支援;這些屬性是非標準的,並且只有 Gecko 支援它們。 - 現在,HTML 的
<audio>和<video>元素在 Ogg 容器中支援 Opus 音訊編解碼器。(Opus codec) - 現在,
<source>元素支援media屬性。 - 現在,
<audio>和<video>元素支援played屬性,該屬性提供一個TimeRanges物件,列出到目前為止已播放的媒體的時間範圍。
CSS
font-feature-settings屬性已更新為最新語法:font-feature-settings: "lnum" 1;- CSS
text-transform屬性已擴充套件,以正確處理 Unicode 連字字元(例如fi)。 - 已實現 CSS
word-break屬性。 border-image屬性已更新以匹配最新的規範,並且屬性已移除字首。(bug 713643)skew()transform函式在 Firefox 14 中被移除,但由於現有網站相容性問題已恢復。但是,建議作者使用skewX()和skewY()函式。- CSS
unicode-bidi屬性的plaintext值現在也適用於內聯元素。(Firefox bug 746987)。
DOM
- DOM Events Level 3 方法
KeyboardEvent.getModifierState()和MouseEvent.getModifierState()已實現,這些方法允許您查詢修飾鍵(如Ctrl或Shift)的狀態(bugs 630811 和 731878)。但行為符合最新的 D3E 草案。因此,某些修飾鍵名稱與 IE 不同(Firefox bug 769190)。 - 在滑鼠事件中,已實現使用
MouseEvent.buttons屬性查詢滑鼠按鈕狀態的支援。 - 在鍵盤事件中,已實現使用
KeyboardEvent.location屬性查詢按鍵位置(標準、修飾鍵的左側或右側、在數字小鍵盤上)的支援。(Firefox bug 166240)。 KeyboardEvent.keycode的結果已根據更最佳化的規則計算,這些規則在 Windows/Linux/Mac 上幾乎相同。現在,在 Linux 和 Mac 上的一些非 ASCII 字元集鍵盤佈局(例如阿拉伯語、西里爾語、泰語等)上也可以使用。請參閱 虛擬鍵碼文件。range.detach()方法已轉換為無操作(no-op),並可能在將來被移除。- 已實現
HTMLVideoElement.mozHasAudio()方法。它指示給定的影片元素是否關聯了音訊軌道。(bug 480376) PerformanceAPI 新增了一個方法now(),支援DOMHighResTimeStamp型別的精確計時器。(bug 539095)。- 已更新 WebSMS API,現在支援一個
read屬性,用於指示簡訊是否已讀或未讀。 - 已實現 FileHandle API。
- 現在,除了
ArrayBuffer之外,Blob建構函式還能接受ArrayBufferView作為blobParts引數的成員。(bug 752402) - 已實現 Ambient Light Events Working Draft 中指定的
DeviceLightEvent。 - 已實現 Proximity Events 的
DeviceProximityEvent和UserProximityEvent。 - 已實現
FilelastModifiedDate屬性。(Firefox bug 673586)
JavaScript
- 已新增對型別陣列規範中
DataView介面的支援。這提供了對ArrayBuffer中資料的低階訪問。 - 已新增對新的 ECMAScript 2015 內建函式支援:
Number.isNaN()、Number.toInteger()、Number.isInteger()、Number.isFinite()。(bug 749818、bug 761495、bug 761480)。 - 已新增對 ECMAScript 2015 預設引數的支援。(bug 757676)。
- 已新增對 ECMAScript 2015 剩餘引數的支援。(bug 574132)。
WebGL
- 已新增對
WEBGL_compressed_texture_s3tc擴充套件的支援。壓縮紋理減少了在 GPU 上儲存紋理所需的記憶體量,從而可以使用更高解析度的紋理或更多的相同解析度的紋理。
MathML
- 數學運算子現在可以使用
@font-face指定的可下載字型。這使得 MathML-fonts 附加元件也可以與可伸縮運算子一起使用。 <maction>元素的selection屬性現在僅在toggleactiontype 時才被考慮。- 已移除已棄用的名稱空間繫結。(Deprecated namedspace binding)(Firefox bug 673759)。
- 對 Length 和
<mpadded>值的支援已更接近 MathML3 規範中的定義。 - 已向運算子字典添加了新的阿拉伯數學映象運算子(Firefox bug 757125)。
SVG
- 已新增對
<view>元素的支援。(Firefox bug 512525)。
網路
- 已合併對 SPDY v3 協議的支援。預設停用,可以透過將首選項
network.http.spdy.enabled.v3設定為 true 來啟用。(bug 737470)
面向附加元件和 Mozilla 開發者的變更
介面更改
nsIDOMWindowUtils-
sendMouseEvent()、sendTouchEvent()、sendMouseEventToWindow()、sendMouseScrollEvent()和sendKeyEvent()的aModifiers支援KeyboardEvent.getModifierState()支援的所有修飾鍵。請使用MODIFIER_*值。現在sendKeyEvent()的第五個引數已從boolean更改為unsigned long。為了向後相容,如果呼叫者傳遞true或false,行為不會改變。此更改允許呼叫者指定按鍵的位置。 nsIBrowserHistory-
hidePage()方法從未實現過,並且在此版本中已被完全移除。作為使所有“Places API”非同步的持續工作的一部分,addPageWithDetails()方法也被移除;請改用mozIAsyncHistory.updatePlaces()。此外,count屬性也被移除;它在一段時間內都沒有返回實際計數(而是指示是否存在任何條目)。您可以使用nsINavHistoryService.hasHistoryEntries代替。 nsIDOMUtils-
已新增
nsIDOMUtils.parseStyleSheet()方法,該方法允許(重新)解析層疊樣式表。 nsIINIParserWriter-
nsIINIParserWriter.writeFile()方法現在接受一個flags屬性。目前只有一個選項:您可以告知它以 UTF-16 格式寫入檔案,而不是 UTF-8,以便與 Windows 和某些安裝程式更好地相容。
新介面
nsISpeculativeConnect-
提供了一種向網路層提示您很可能在不久的將來開啟到給定 URI 的連線的方法。這使得網路層可以提前開始有時延遲很高的開啟新網路連線的過程。
已移除的介面
以下介面已被移除
nsIGlobalHistory