我想为firefox编写脚本。火狐似乎有不同的术语,比如附加组件,扩展,插件。我有一种感觉,它们并不都是一样的。你能用几句话概括一下两者的区别吗?
插件:基本上是任何可以安装到浏览器中的东西。这包括例如扩展,主题,插件,字典,语言包,搜索引擎。
Extension:一个扩展浏览器功能的包,Firefox使用的扩展格式只适用于基于gecko的浏览器。扩展通常使用XUL和CSS作为用户界面,使用JavaScript作为动态操作。他们可以完全访问XPCOM,也可以提供自己的XPCOM组件。最近添加了附加SDK作为生成简单扩展的替代方法,它使用HTML而不是XUL,但限制了浏览器用户界面可以显著扩展的方式。从Firefox 57开始,所有的扩展都必须基于web扩展API。
Plugin:指所有浏览器都支持的NPAPI插件,但ie除外(后者使用专有的ActiveX技术)。这样的插件是二进制库,如果一个网站使用<embed>
或<object>
标签的类型是由插件处理调用。插件既可以为标签绘制一些内容(窗口插件),也可以留在后台,简单地为网页的JavaScript代码提供API(无窗口插件)。典型的例子是Flash或Silverlight。对插件的支持正在逐步淘汰,截至2018年,Flash是唯一在某种程度上仍然支持的插件。
作为上面有用答案的补充,我觉得这个高层次的总结很有帮助:
扩展与插件略有不同。插件通常具有一组狭窄的功能。(. .由于插件和扩展都增加了原始应用程序的效用,Mozilla使用术语"附加组件"作为包含插件、主题和搜索引擎的增强模块的一个类别。
(从http://en.wikipedia.org/wiki/Plug-in_(计算))
根据Firefox:
扩展
扩展为Firefox添加新功能或修改现有功能。有一些扩展允许你阻止广告, 从网站下载视频,将Firefox与Facebook或Twitter等网站集成,并添加其他浏览器中包含的功能,如translator。
插件
插件添加对各种互联网内容的支持。这些通常包括专利格式,如Flash,用于视频、音频、在线游戏、演示等。插件是由其他公司创建和分发的。
附件
它们是-扩展,插件,主题,搜索引擎和字典&语言包。
来源: Firefox - https://support.mozilla.org/en-US/kb/find-and-install-add-ons-add-features-to-firefox
扩展上面的增强
扩展是用来扩展软件功能的插件是用来解决软件问题的(能够做一些它本来就没有设计的事情)。
这两种类型都扩展了程序的能力。…我想这就是为什么它会如此令人困惑。
扩展可以是(通常是)软件开发公司的一个(n)选项(通常是花钱的),插件可以来自制作软件的公司,也可以来自为软件添加功能的第三方。