浏览器扩充功能(英语:Browser extension)是一个扩充网页浏览器功能的外挂程式。一些扩充功能是使用诸如HTML、JavaScript和CSS之类的网路技术来编写[1]。有些则是使用网页浏览器提供的机器码和应用程式介面(APIs)开发,如NPAPI和PPAPI。扩充功能可以改变网页浏览器的使用介面,而不会直接影响网页的可视内容,如增加工具列。
历史
Internet Explorer从1999年发布的版本5开始支援扩充功能[2]。自2004年推出之后,Firefox已经支援扩充功能。Opera桌面浏览器从2009年发布的版本10支援扩充功能。Google Chrome从2010年发布的版本4开始支援扩充功能。Safari从2010年发布的第5版开始支持原生扩充功能。Microsoft Edge在2016年3月开始支援受限的扩充功能[3][4]。
安装方式
大部分浏览器都有一个线上商店,允许使用者寻找扩充功能的名称并查询常用扩充功能的名称列表。Google Chrome[5]、Firefox[6]、Opera[7]和Safari[8]都提供这样的商店。对于 Microsoft Edge,用户可以去 Windows 10 内置的 Microsoft Store 下载对应扩展。
功能
浏览器扩充功能用于改善浏览器的使用介面、安全性或可存取性、阻止广告以及各种其他功能,使浏览网路更轻松和更愉快。有很多类型的扩充功能可用于控制浏览隐私的各个方面并减少威胁。例如,他们可能会阻止第三方追踪使用者的行为,阻挡广告和脚本,或者执行良好的习惯[9]。
浏览器工具列是改变使用介面的常见类型浏览器扩充功能。它是一个驻留在浏览器视窗的工具列。大部份主流的网页浏览器都支援工具列用来扩充浏览器介面和功能。工具列是特定于单一浏览器,这意味著工具列在不同的浏览器上无法发挥作用。
开发
浏览器扩充功能开发是针对特定浏览器的扩充功能的实际创作。每一种浏览器类型都有自己的架构和应用程式介面(APIs)来构建扩充功能,每个扩充功能需要不同的程式码和技能。最早的API是NPAPI。它最初是为Netscape浏览器开发的,从1995年开始用于Netscape Navigator 2.0,后来被其他浏览器采用。微软并没有将这个API用于Internet Explorer,而是为内容变更外挂程式选择了ActiveX。浏览器变更外挂程式称为浏览器辅助物件,是基于元件物件模型(COM)介面设计的。Google后来在Chrome中引入了PPAPI介面,尽管Google Chrome扩充功能程式主要是使用HTML5、JavaScript和CSS等网路技术构建的[1]。Firefox已经支援许多了开发技术称为Mozilla附加元件,包括NPAPI、XUL、XPI、XPCOM、XPConnect和JetPack,以及HTML5、JavaScript和CSS等网路技术。其中WebExtensions API与Google Chrome和Microsoft Edge的扩充功能APIs相容[10]。
参考资料
- ↑ 1.0 1.1 What are extensions?. [2014-02-18].
- ↑ Browser Extensions. [2010-06-05].
- ↑ Bright, Peter. Edge browser now has extensions in the latest Windows 10 preview. Ars Technica. Condé Nast. 2016-03-18 [2017-11-05].
- ↑ Foley, Mary Jo. Microsoft releases first Edge extensions preview in newest Windows 10 test build. ZDNet. CBS Interactive. 2016-03-17 [2017-11-05].
- ↑ Extensions. Chrome Web Store. Google.
- ↑ Add-ons for Firefox. addons.mozilla.org. Mozilla Foundation. [2017-03-15].
- ↑ Extensions. Opera Add-ons. Opera Software. [2017-03-15].
- ↑ Safari Extensions. apple.com. Apple. [2017-03-15].
- ↑ Henry, Alan. The Best Browser Extensions that Protect Your Privacy. LifeHacker. Gizmodo Media Group. 2015-08-31.
- ↑ WebExtensions. developer.mozilla.org. Mozilla Foundation. [2017-03-15].