浏览器插件总体可以划分为两大阵营,即IE支持的插件以及非IE支持的插件。
本来在Netscape时代,对于浏览器插件是有公用的规范的(NPAPI),一开始所有浏览器都支持该规范,包括IE。后来出于商业原因,微软的IE不再支持NPAPI,改而自己开发了一套基于COM的ActiveX体系,但这个体系对于非IE浏览器是拒绝支持的。
所以目前的状况基本是,IE浏览器仅支持ActiveX控件,而Firefox、Chrome等浏览器只支持另一类接口(XPCOM或NPAPI)。要想实现一个Web插件,至少需要同时考虑IE支持的AceiveX版以及非IE支持的Plugin版(Flash等插件对于IE与非IE浏览器都是不同的)。
国内多数浏览器的WEBKIT内核极速模式等浏览器,与服务端是什么平台无关。
IE内核浏览器很多,主要是为了弥补IE浏览器本身功能的不足。现在或者曾经比较主流的几款IE内核浏览器(360安全浏览器、世界之窗、傲游、GreenBroswer等)
一:firefox
NPAPI 是一个很经典的插件方案,用dll进行注入,用协定的API进行通信,用字符串描述插件能力。浏览器会根据能力描述,动态加载插件,并负责插件调用的流程和生命周期管理。而插件中,负责真实逻辑的处理,并可以构造UI与用户交流。以此类方式实现的插件系统。
在firefox提供SDK的下载() 插件整体的实现思路就是通过插件调用OCX控件,也就是插件本身是衔接浏览器与OCX的一条桥梁,这样做就可以简单的实现非ie内核浏览器对OCX控件的支持。Firefox中支持ActiveX控件运行的研究与实现
怎么做能让Firefox支持ActiveX呢?
答:两种方案:一种是使用IETab这个插件,在Firefox下直接调用IE浏览器内核进行浏览; 另一种是使用npActivexPlugin,让Firefox直接支持ActiveX。这两款Firefox扩展的下载地址分别是和http://forums.mozine.cn/index.?showtopic=2350,选择一款适合你自己的就可以了。 XPI是什么? firefox中的xpi实际上类似于IE中的插件或扩展(如Flash插件等). 格式一般为.Zip, 由XUL、、CSS、HTML和图片等构成. Firefox扩展包(Firefox Extensions)是指对为了增强在Mozilla Firefox中浏览网页所做的一些小改进的名字。他们也许只是 可以为Mozilla Firefox增加新的功能一个小程序或者插件。您可以在Extensions page上看一看各种扩展包列表。 关于扩展包的最伟大的好事则是它使得Mozilla Firefox小巧而不臃肿。任何人可以根据自己需要安装适当的扩展包。 ================================================================== 如何安装Firefox扩展文件? 扩展文件通常是xpi文件格式(以.xpi结尾).有三种安装方法: 1,直接拖拽到Firefox浏览器的窗口里或扩展窗口里 2,点击 '菜单"--"工具"--''扩展'',把.xpi文件拖进弹出窗口里,稍后就可以看到Firefox会询问你是否要安装这个插件,点击是,并重启Firefox浏览器 3,鼠标右键点xpi文件,选打开方式,在打开方式里选firefox,设置关联。以后只要双击xpi文件就自动安装了二:chrome
NPAPI插件开发详细记录:用VS2010开发NPAPI插件步骤:
NPAPI插件开发详细记录:安装包的制作
NPAPI插件开发
理解WebKit和Chromium: 插件机制(NPAPI Plugin)
基于NPAPI插件开发