天天看點

chrome插件開發雜記

重新整理目前 tab 頁的3中方式

// 1.
chrome.tabs.getSelected(null, function(tab) {
    var code = 'window.location.reload();';
    chrome.tabs.executeScript(tab.id, {code: code});
});
// 2.
chrome.tabs.update(null, {url: url});
// 3.
chrome.tabs.reload();
           

popup 和 background 之間的通訊

以修改 cookie 為例子:

popup:                            -> 修改cookie                          -> 更新UI
background: -> 監聽cookie的修改事件               -> 觸發監聽,與 popup 通訊
           
// 在background中
chrome.runtime.sendMessage({});
// 在popup中
chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
    // do things
});
           

popup彈出時候,更新UI

// 在popup中綁定 window.onload 事件
window.onload = init;
           

繼續閱讀