Firefox 58.0 正式版用戶特性介紹

轉載自:Firefox 58.0 正式版用戶特性介紹

昨晚我們發布了 Firefox 58.0。這是 Firefox 進入 2018 年以來穩定版的第一次重大更新,Firefox 58.0 主要是對 57 版本(Firefox Quantum)的問題修復和性能優化,值得注意的是 58 版本創建的配置文檔與早期版本的並不兼容,如果你想在保留配置文檔的情況下降級到之前版本,最好為它新建一個配置文檔。

一、瀏覽器性能持續提升

Firefox 57.0 引入了量子組件,極大地提升了瀏覽器的整體性能,用戶體會到了前所未有的界面流暢性和網頁載入速度。但 Firefox 並未就此停下腳步,仍不斷在後續版本中提升瀏覽器的性能,包括引入 OMTP,JS 啟動位元組碼緩存等技術。下面就主要提升內容逐一介紹:

1、啟用 Off-Main-Thread Painting(非主線程繪製)提高網頁載入流暢性

既以往版本 Firefox 啟用了 OMTC(非主線程合成)之後,Firefox 58.0 啟用了 OMTP,這項技術是指將原來繪製網頁的進程從主線程當中剝離,運行在自己單獨的線程之中。

我們知道 Firefox 主要任務都運行在主線程之中,包括運行網頁的腳本,響應用戶的輸入,維護當前頁面的狀態等等。整個網頁的所有像素數據也都是在主線程當中繪製的。這就有可能發生因為原因,而影響了瀏覽器滾動、動畫顯示或腳本運行的性能,在用戶方面的感受就是掉幀或卡頓。

啟用了 OMPT,頁面內容可見部分仍然在主線程執行,但是像素的柵格化(rasterization)不在主線程中執行,而在自己單獨的柵格化線程中執行,從而減輕了主線程的計算負擔,提高了響應速度。

更詳細的介紹可以查看這篇文章:Off-Main-Thread Painting

運行包含大量 JavaScript 的網頁時候的幀率提升了 30%。

對應的 about:config 參數是 layers.omtp.enabled,true 為啟用,雙擊改成 false 即可關閉。

2、啟用 JavaScript 啟動位元組碼緩存提高網頁載入速度

JavaScript 啟動位元組碼緩存(JavaScript Startup Bytecode Cache)是一項針對瀏覽器

JavaScript 引擎的優化,具體技術細節可以查看這篇介紹文章,由於涉及較為複雜的技術原理,這裡就不贅述了,我們只要知道網頁啟動未顯示的時候 Firefox 需要生成 JS 庫裡面用到的函數的位元組碼,而將位元組碼保存在緩存裡面下次可以快速調用,從而可以提高網頁的載入速度。

測試結果顯示,在打開 Wikipedia、Facebook、Twitter、Google 等常用網站時,平均載入速度提升了約 43ms。

對應的 about:config 參數是 dom.script_loader.bytecode_cache.enabled,true 即為開啟,雙擊改成 false 即可關閉。

3、降低後台標籤頁的 CPU 佔用

為了降低後台標籤頁的 CPU 佔用,從而提升前台標籤頁使用效率和性能,Firefox 58.0 使用了一項名為後台標籤頁節流(Tab Throttling)的技術,減少了後台標籤頁所用的計時器的能力,特別是 setTimeout 和 setInterval 方法,將瀏覽器的計算能力更多給了前台標籤頁。但在音頻視頻播放、WebRTC 和 WebSocket 場景不使用標籤頁節流技術。更多內容參見 MDN 文章。

對應的 about:config 參數是 dom.timeout.enable_budget_timer_throttling,true 即為開啟。

4、大幅提升無障礙工具中屏幕閱讀工具的使用性能

無障礙工具(Accessibility Tools,或 a11y 工具)中屏幕閱讀工具可將屏幕的內容通過音頻設備播放出來,適合一些視覺障礙人士。Firefox 57.0 雖然提升了無障礙工具的性能,但是還有一些問題沒解決,所以官方推薦用戶仍使用 Firefox ESR 52.0 來使用這些工具。現在

Firefox 58.0 大幅提升無障礙工具,尤其是 NVDA 屏幕閱讀工具的性能。

5、新的 WebAssembly 編譯器性能提升巨大

WebAssembly 我們之前介紹過是一個用來編譯網頁應用的新的二進位格式,用於很高的性能,Mozilla、Google、微軟等聯合開發。Firefox 58.0 使用了新的編譯器,比起舊編譯器,代碼編譯速度提升了 10 到 15 倍。

二、繼續改進自帶的 Firefox 截圖工具

Firefox 56.0 新增了一個自帶的截圖工具,可以截取網頁區域內容並支持上傳到圖片伺服器或分享到社交網站。Firefox 58.0 繼續改進,增加了兩項主要功能,一個是複製到剪貼板的功能,另一個是可以在隱私瀏覽模式下使用截圖工具。

三、Windows 版本 Firefox 的簡易安裝包支持斷點續傳

Firefox 官網首頁安裝程序的下載默認提供的是一個體積很小的簡易安裝包(Stub

Installer),會自動根據系統下載對應的最新版本程序。原來 Firefox 的簡易安裝包(stub

installer)如果遇到網路中斷,則必須重新重頭下載,Firefox 58.0 開始,簡易安裝包支持斷點續傳了,可從上次中斷位置恢復下載。

四、頁面許可權系統新增是否覆蓋鍵盤快捷鍵的許可權

Firefox 有一套默認的鍵盤快捷鍵設置,而許多網站也支持一些鍵盤快捷鍵的使用,尤其是一些文章閱讀的網站,往往會造成衝突。Firefox 58.0 的頁面許可權系統新增了一個許可權設置,允許用戶設置是否允許網站覆蓋當前瀏覽器所使用的鍵盤快捷鍵。這個許可權頁面藏得比較深,需要在網頁上點擊右鍵,在「查看頁面信息」當中的「許可權」中找到「覆蓋鍵盤快捷鍵」的選項。

五、選項界面可提示用戶有 WebExtensions 擴展修改主頁或搜索引擎

在 Webextensions 擴展能力管理這方面,除了擴展安裝時提示用戶需要獲取哪些許可權,或在擴展需要獲取新許可權之前主動提示用戶以外,對於一些 WE 擴展會修改主頁,新標籤頁或默認的搜索引擎的情況,Firefox 58.0 會在選項界面提示用戶,並顯示擴展的名稱,如不需要用戶還可以主動禁用這個擴展。

六、其他一些細節調整

1、對於使用 en-US 語言的美國用戶,自動填充表單的功能新增填寫信用卡信息的選項。

2、about:support 頁面可以顯示當前配置文件夾的絕對路徑了並且可顯示本地化信息。

3、視頻在播放的時候,如果標籤頁不在視野範圍內,如滾動頁面,或切換到其他標籤頁,則播放的視頻掛起,停止解碼,可提升性能和減少電池消耗。對應的

about:config 參數:media.suspend-bkgnd-video.enabled,需為 true。

4、移除 e10s rollout 系統擴展。

5、移除打開 e10s 和非 e10s 窗口的菜單項。

6、新增一個非 HTTPS 第三方 cookies 生存期的隱私設置,對應 about:config 參數是

network.cookie.thirdparty.nonsecureSessionOnly,如果設置為 true,則非 HTTPS

傳送的第三方 cookies 會被視作瀏覽會話 cookies,在 Firefox 退出時候失效,即使默認的生存期很長。

7、新標籤頁面中的可摺疊或展開各版塊。

8、對於 Linux 用戶,安裝在非標準目錄下的字體也可以顯示出來了。

9、更換跟蹤保護列表無需再重啟瀏覽器後生效。

10、刷新 Firefox 時,只要之前有非自帶的書籤,則刷新後默認顯示書籤工具欄。

11、越來越多網站使用 HTML5 Canvas 指紋跟蹤技術來竊取用戶隱私數據,例如 Canvas 圖像數據。 Firefox 58.0 在遇到 Canvas 圖像數據的網站時候會在地址欄左側標識框顯示提示,用戶可以選擇允許訪問,或不允許訪問,並可記住用戶在此網站的選擇。

12、Firefox 58.0 阻止通過點擊鏈接,外部程序或 window.open (), window.location 這樣的來打開 data:URI,避免此類釣魚攻擊。

13、賽門鐵克的安全證書,Firefox 58.0 會在記錄台顯示一個警告,Firefox 63.0 時候將不再接受該證書,此外移除了StartCom 和 WoSign 證書。

14、提升了新標籤頁面打開時候的性能,打開和顯示速度更快。

15、提升了在不同標籤頁之前滑鼠滾動時候的性能,滾動速度更流暢。

16、優化了標籤頁載入進度指示器的 CPU 佔用。

17、提高了在下載項界面中通過右鍵菜單刪除下載項時候的速度。


以上是 Firefox 58.0 在用戶使用方面的主要更新,其他涉及到開發者的更新,這裡就不介紹了,感興趣的朋友請看發行說明: Firefox 58.0 正式版發行說明(官網英文)

推薦閱讀:

6款你值得擁有的Anki插件(極簡略,預覽版)
又一個神器,讓圖片化腐朽為神奇
分享實用乾貨|六款堪稱神器的電腦軟體!
區域網工具系列 3 ——手機看電腦共享的資源
怎樣僅靠命令行實現電腦的常用功能?

TAG:火狐浏览器Firefox | 网页浏览器 | 软件推荐 |