
Google提供的Chrome Extensions API是开发Chrome扩展用到的最权威资料之一,里面详细介绍Chrome扩展所能够实现的各方面的功能和Chrome浏览器所提供的接口(比如怎么调用用户书签)。
使用步骤如下:
后台HTML里的JS在浏览器被打开时就开始执行了,当浏览器关闭时停止工作。你可以在这里写一前芹答些代码监视浏览器动作(比如在监视到用户创建了一个新标签页时邪恶的把它关闭,可以做定时任务(setInterval等),可以添加一段音乐首仿。
用户点击扩展栏图标时可以d出一个页面,当用户点击网页部分时这个页面就被关闭了。
可以使用js获取用户当前网页的DOM数据,监听用户键盘、鼠标动作。这些代码是一个独立的JS文件(而不是像后台、d出窗等是一个HTML文件里的嵌入js代码),通过扩展配置注入到相应的网页。
读取用户计算机数据(NPAPI Plugins)。这个功能要用到dll(动态链接库)知识,可以启动用户电脑的程序,删除用户文件等慧慧功能。相当于一个小Windows程序。利用Chrome提供的方法可以让扩展的后台页面与你的dll通信。
首先先将扩展的插件下载到电脑本地唤派目录中,然后在谷歌浏览器的扩展管理页面中袭弯添加此插件。这样就能在Google Chrome浏览器中开启扩展功能,具体 *** 作请参照以下步骤。拍链闷
1、首先在网上找到需要使用的插件文件,然后将文件下载到电脑中。
2、然后在浏览器的菜单界面中,依次点击“工具/扩展程序”选项打开扩展管理页面。
3、然后打开插件所在的文件夹,将插件的安装包拖到扩展管理页面中。
4、然后d出一个对话框,然后点击“添加扩展程序”按钮。
5、完成以上设置后,即可在Google Chrome浏览器中开启扩展功能。
开始为了着手创建你的扩展程序,你只需要为你的扩展创建一个文件夹。程序所必须的文件只有manifest.json.,不过也推荐准备一些图片用作图标,和至少一个JavaScript以提供功能。一般来说还会包含HTML文档、样式散蠢表、图片等等其他的资源。
Manifest文件
每个扩展都必须在其根目录下包含一个manifest.json文件。
这个文件里面声明了扩展的名称、版本、权限、设置选项和其他的一些和扩展相关的元数据。Manifest v1早在Chrome 18便已被弃用,而且会根据这个时间表逐渐淘汰使用Manifest v1的扩展。如果你在参考一些旧扩展的Manifest文件的话,请确认添加"manifest_version": 2.
Google发布的Manifest v2中支持的域
后台页
大多数扩展都会在其manfiest.json文件内有这样的内容:
1
2
3
4
5
{
"background": {
"scripts": ["index.js", "other.js"]
}
}
这一段代码指定了两个需要被加载而且要保持在后台运行的脚本,这些脚本会在扩展的后台页运行。后台页是一个在扩展的进程中生成并运行的页面,存在时间会和扩展的生命周期等长。判简后台页可用来作为扩展的其他界面的控制器,用来维护某个状态或者保持某些活动。如果你需要用后台页来声明一些标记来用,可以把一个HTML文件名指定给page选项。
事件页
后台页会从扩展被加载的时候被装载,而且会一直留在内存里。这是因为如果有些状态需要被长时间维护,或者需要被扩展的其他部分访问。但是如果你没有这个需求,那么应该尽可能的使用事件页。事件页其实只是相当于一个包含了”persistent”: false条目的后台页,这一行语句告诉Chrome可以不需要把后台页保留在内存里。相对来说,事件页也会在最开始被装载,但是一旦指定的脚本运行完毕,事件页冲冲陪便会从内存卸载,而且会在需要的时候被再次加载(比如用来回应某些 *** 作)。
以上便是在为扩展添加功能之前所需要知道的。
交互
利用Google提供的大量API,你的扩展与浏览器交互或者为用户提供功能都变得方便。
chrome.* APIs
Chrome的程序和扩展程序都非常喜欢调用chrome.* APIs,这些API可以让你通过不同的方式来 *** 控浏览器,API通常会在后台脚本里面被调用,这是我找到的一些常用API:
chrome.tabs 标签页:新建、刷新、关闭、访问和 *** 控标签页
chrome.history 历史:访问用户浏览历史
chrome.bookmarks 书签:添加、编辑、移除和搜索用户书签
chrome.events 事件:监听或者管理浏览器发生的事件
chrome.commands 命令:添加或者改变键盘命令
chrome.contextMenus 右键:添加条目到右键下文菜单
chrome.omnibox 多功能框(地址栏):添加多功能框关键字,使用户可以向扩展发送指令或者激活扩展
其他API
Chrome程序和扩展程序通常也会用到其他的API,包括如本地存储、地理位置、缓存、画布等新型的HTML5 API。你也可以用普通的JavaScript或者webkit API来实现。
声明权限
有些Chrome API的功能必须要在manifest.json文件中声明相关权限才能被调用,通过在permissions 域中把值设成相应权限名称,或者是通识符组成的数组。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)