您的位置:首页 > 其它

浏览器研究(一):什么是插件?什么是扩展?

2009-11-24 16:21 260 查看
浏览器学习(一):什么是插件?什么是扩展?

最近对浏览器世界进行了一番探索,浏览器做的事情看似简单(无非就是用读取网络服务器上的HTML文件等,然后进行一番解析,把丰富多彩的内容在显示器上显示出来),但技术非常复杂。在一些朋友的帮助下,有了一点进展,下面将自己学习的过程写出来,供大家参考。

注:
(1). IE比较特殊,自成一套体系,本文暂时不涉及到IE。
(2). 如果没有特殊说明,文中的“浏览器”一词包括firefox, opera以及基于webkit的浏览器(chrome, safari)。
(3). 实验平台为Linux和Windows.

一、什么是插件?什么是扩展?

1.1 插件(Extensions)和扩展(Plug-ins)是不同的东西,网上很多资料将两者混为一谈。
mozilla对插件和扩展的说明如下:

Extensions
Extensions add new functionality to Mozilla applications such as Firefox, SeaMonkey and Thunderbird. They can add anything from a toolbar button to a completely new feature.

Plug-ins
Information about how to create plug-ins, which are binary components that let Mozilla based software display content they can't handle natively.

1.2 我的理解:
扩展 -- 使用特定的脚本,调用浏览器内建的原子功能,以组合原子功能的方式,增加新的特性和功能。
插件 -- 以动态库的形式存在,提供浏览器原本不支持的功能,典型的如:Adobe Flash插件,Adobe PDF插件。

1.3 什么情况下使用扩展,什么情况下使用插件?

(1)如果仅仅是丰富一下浏览器本身的功能,比如增加新的按钮,则使用扩展。
(2)如果让浏览器支持原本新的功能,比如新设计了某种文件,嵌入网页,浏览器加载网页后,调用相对应的程序来处理此文件。(比如flash,avi等文件),则用插件。
(3)如果让浏览器支持扩展了javascript语言的脚本(使用了自定义的js对象,函数),则使用插件。

1.4 问题:如果让浏览器支持新的脚本语言,应该怎么做呢?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: