Firefox Quantum支援跨瀏覽器外掛架構

weixin_33806914發表於2017-12-21

最新發布的Firefox 57 “Quantum”加入到Chrome和Edge的行列,現在只支援基於WebExtensions API的擴充套件外掛,也就是基於跨瀏覽器的擴充套件架構,使用純HTML、CSS和JavaScript來開發。基於舊架構的Firefox外掛不能在Quantum上使用。

\\

WebExtensions API是由Mozilla根據W3C瀏覽器外掛社群工作組提出的建議而開發的,現在Chrome、Firefox和Edge使用了相同的架構,Web開發者開發的外掛只需要做少量修改就可以跨瀏覽器執行。開發者可以在MDM上檢視更多相關文件

\\

Firefox從1.0版本開始就支援擴充套件外掛,它們使用Mozilla的XML使用者介面語言(XUL)進行開發,可以自由訪問Firefox的內部細節。來自How-to Geek的Justin Pot解釋了這種方式的優點和不足:

\\
\Firefox外掛可以在一定程度上改變瀏覽器的行為,這也就是它們強大的地方:沒有什麼東西是它們一定能做或一定不能做的。不過這也是新版Firefox要與它們斷絕關係的原因。\
\\

谷歌在2009年釋出了Chrome的外掛特性,帶來了一種新的外掛開發模型,可以使用純HTML、CSS和JavaScript開發外掛,並提供了一組完善的JavaScript API讓外掛可以與瀏覽器發生互動。

\\

不久之後,Mozilla於2011年7月釋出了新的外掛SDK,並聲稱“新SDK讓使用JavaScript、HTML和CSS開發Firefox外掛變得更容易”。SDK一直朝著這個方向發展,不過仍然允許外掛訪問Firefox底層的細節

\\

這種狀態持續了好幾年,每個瀏覽器都有自己的外掛架構。2015年5月,W3C成立了瀏覽器外掛社群工作組,他們的使命是“嘗試對外掛的包結構、API和可移植性(如跨瀏覽器)進行標準化”。

\\

2015年8月,工作組提出的建議很快就變成了新版的Firefox WebExtensions API。2015年11月3日,該API的初始版本出現在了Firefox 42中。微軟Edge在2016年8月2日的Windows 10年度更新版本上釋出了基於相同架構的外掛API。隨著Firefox Quantum的釋出,舊版的外掛API完全被禁用,現在只支援WebExtensions API。

\\

檢視英文原文Firefox Quantum Commits to Cross-Browser Extension Architecture

相關文章