编写浏览器插件如何入门?
难道这将是我的处女回答...
目前比较流行的浏览器有FF,Chrome,Safari,IE等,主要是内核不同。
首先,插件的英文是plugin,但是我谨慎怀疑本问题其实指的是扩展(extension)。
在绝大多数情况,日常需要的功能完全可以通过extension完成。
以下假设我们讨论如何开发不同浏览器的extension。
其实,所有的开发入门都是找官方文档,对本问题同理。
对FF,访问
Extensions | MDN个人看了一段时间,主要是要学习XUL。
另外,可以去这学习下别人的:
Add-ons for Firefox对Chrome,访问
Getting Started: Building a Chrome ExtensionPS,Sogou浏览器的官方开发文档明确表明跟着Chrome的扩展系统走...
http://ie.sogou.com/open/doc/?id=1_1&title=API%E5%88%B6%E5%AE%9A%E8%A7%84%E8%8C%83%E7%AE%80%E4%BB%8B对Safari,访问
Safari Extensions Development Guide: About Safari Extensions这个还没详细看过,回头再补充,应该不会差
对IE系,实在无力吐槽,烂,烂,烂。官方文档烂,开发框架烂(借助BHO),论坛不活跃,插件少。
PS,一定要耐着性子读英文文档。看完了FF的开发文档后,曾尝试着翻译了几段英文,觉得实在是太难准确表达英文原义了,尤其是很多术语,用中文简直没办法描述。当然,我的水平肯定也是有问题的。但还是推荐看英文文档。
虽然这种拦截的初衷是好的,但是我相信大家平时肯定不会因为有了这个拦截提醒页面,就会对即将打开的网站安全性提高自己的警惕性,而是把它当做用户协议一样无视并点击继续访问。这种体验给人的感觉是十分难受的,特别是有时候看一些技术文章,文章里面会贴一些参考资料链接,有时我会习惯先右键新tab中打开,并且继续往下阅读,等看到刚打开的tab栏没有加载圈圈时(说明页面已经加载完毕),再切过去看,结果被拦截了???
上面的痛点,其实很容易解决,就是通过开发一个浏览器插件实现。
实现思路
我们先打开控制台看下这些网站跳转链接长啥样:
掘金:
超详细带你从入门开始,开发一个超实用的浏览器插件
相信大家平时在电脑上逛掘金、知乎网站时,肯定有看到过下面超级烦人的跳转拦截确认页面
打包发布插件:
发布升级版本:
三、manifest.json配置介绍
Manifest工程配置文件:manifest.json,最基础的文件,也是最重要的文件。
从后缀可以看出它是JSON格式的文件,JSON格式的介绍:
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。
案例如下:
manifest_version
manifest文件内容格式的版本,目前版本为2
Chrome浏览器插件开发-淘宝自动登录如何自己开发一款浏览器插件