WebExtension实质上和android app一样,是一个特殊的zip压缩包,今天大致了解了一下这个特殊的包里可能出现的文件。
每个WebExtension都有一个关键的文件:manifest.json
这是浏览器在解析插件时读取的第一个文件,这个文件中定义了这个插件应该包含的其他文件,可以指向以下类型的文件
- background pages: 字面意思,一个在后台运行的页面,执行一个长时间运行的逻辑
- content scripts: 与网页进行交互,这类是可以插入到网页中的js脚本
- browser action files: 在工具栏中添加按钮所需要的文件
- page action files: 在地址栏添加按钮所需文件
- options pages: 为用户定义一个可浏览的UI界面,可以改变插件的设置
- web-accessible resources: 使打包好的内容可用于网页与目录脚本
总共的这些就构成了WebExtension的结构,只要认识到这些,就能够方便对插件进行修改