Chrome插件开发学习心得(三)之传值
来源:互联网 发布:淘宝延长收货三天 编辑:程序博客网 时间:2024/06/10 03:16
上面主要介绍了mainfest.json文件,其中有两个对象,browser_action中的dafault_popup和background这两个html文件,这两个都是用来写逻辑,这两者有什么区别呢。
dafault_popup这个是在浏览器右上角弹窗显示,这个只有在鼠标点击标题栏中图表才会触发,只触发一次。
background这个会在浏览器启动时开始运行,常驻内存,直到浏览器关闭或者disable插件代码才结束运行。如定时运行某个功能或者记数可以用这个,注意这个一直在运行,可能会出现内存泄露的问题,拖慢浏览器,所以避免使用这个。
一:传值
这时候就会想到,一般使用会结合两者一起使用,这时候就需要考虑传值问题。这时候我们可以在background中定义全局变量和方法,使用chrome.extension.getBackgroundPage()方法读取修改background中的参数和方法
var bg = chrome.extension.getBackgroundPage(); bg.name = "stack"; //给background中增加参数 bg.getName(); //调用background中的getName方法 bg.name; //调用background中的参数
二:永久存储数据
注意,不管是default_popup还是background定义的值,都会出现一种情况,当浏览器关闭时,数据都没了,这时候问题来了,如果我需要存储一个永久的数据怎么办。我们可以使用html5的本地存储功能,localStorage对象。localStorage对象可以想象成cookie,虽然不怎么恰当。这个总共有三个方法,用于读,写和删除健的值。localStorage中提供了三个方法,分别是localStorage.getItem("key")用于读取数据,localStorage.setItem("key",value)用于添加数据,localStorage.removeItem("key")用于删除数据。
localStorage.setItem('main', "hello world!");localStorage.getItem('main');localStorage.removeItem('main');
三:图标显示
除了这些,有时候你会看到图标上有数字,例如下面的数字
chrome.browserAction.setBadgeText({text: "1"});chrome.browserAction.setBadgeBackgroundColor({color: [190, 190, 190, 230]});
这样,第一个是设置图标上文字内容,这里只支持四位字母或数字,这个可以放比如未处理消息数量。第二个是设置文字的背景颜色,不设置默认是红色,代码中给的颜色是灰色。
0 0
- Chrome插件开发学习心得(三)之传值
- Chrome插件开发学习心得(二)之manifest.json文件
- Chrome插件开发学习心得(四)之修改浏览器菜单
- Chrome插件开发学习心得(五)之注入脚本
- Chrome插件开发学习心得(一)之前期开发
- 关于chrome插件开发(三)
- chrome插件开发之调试
- chrome 插件开发之天气预报
- chrome插件开发之调试
- Chrome 插件开发(序)
- Chrome插件开发(Extensions)
- Chrome插件开发(一)
- chrome插件开发(入门)
- Chrome插件开发之二: 添砖加瓦
- Chrome插件开发之二: 添砖加瓦
- Chrome插件开发之manifest.json
- Chrome插件开发之manifest.json
- Chrome插件开发之隐藏页面图片
- 【hibernate框架】一对多(多对一)双向CRUD-关于delete2
- 各种排序算法的稳定性和时间复杂度小结
- Learn How To Realize Positive Risk Response Strategies (Opportunities)
- 【hibernate框架】一对多(多对一)双向CRUD-关于update
- Word Break
- Chrome插件开发学习心得(三)之传值
- 负面测试 (Testing for failure) assertRaises
- 【Unity】Mesh网格编程(一)正二十面体
- 牛顿法开方原理及代码
- 【spring框架】spring的几个Annotation实现(上)
- vim 树形目录插件NERDTree安装
- How To Handle Negative Risk-Learn Negative Risk Response Strategies
- 搭建notepad++ 下的 python编译器
- HDU 2814 - Interesting Fibonacci (Fibonacci性质 + 循环节)