chrome插件开发需要注意的地方
1. chrome传递消息的API在不同的版本有变化,此段代码可以做一个兼容处理。
function compatibleChrome() { if (!chrome.runtime) { // Chrome 20-21 chrome.runtime = chrome.extension; } else if (!chrome.runtime.onMessage) { // Chrome 22-25 chrome.runtime.onMessage = chrome.extension.onMessage; chrome.runtime.sendMessage = chrome.extension.sendMessage; chrome.runtime.onConnect = chrome.extension.onConnect; chrome.runtime.connect = chrome.extension.connect; } }
2. 本地存储Localstorage
//只能设置字符串,如果是json也要转成字符串形式 window.localStorage.setItem("domain:key", "value"); //获取 window.localStorage.getItem("domain:key");
3. 如果要随时读取本地数据,需要在manifest.json配置background.js
{ ..., "background": { "scripts": ["js/background.js"] }, ... }
这样,content_script里面的代码就可以随时读取Localstorage里面的数据,不然的话就需要Browser_action的popup.html一直打开。
----- 但愿人长久,千里共婵娟
(如果你对本篇博文有任何问题和赞同,请回复告诉我)