0
我寫了一個名爲「Word Welter」的谷歌瀏覽器擴展程序,它演示了類似血糖症。爲每個頁面重新運行後臺腳本導航到
該擴展插件使用後臺腳本來切換打開和關閉字。但是,雖然這可以在網頁上工作,但如果用戶打開功能並瀏覽到其他頁面(即單擊當前頁面中的超鏈接),則Chrome按鈕會返回到初始狀態(儘管該按鈕的工具提示文字說功能仍然在!),並且加擾功能關閉。看起來好像我的內容腳本只執行一次(即當執行切換時)。
我希望加擾功能可以在用戶導航到其他頁面時保持活動狀態,我希望我可以使用後臺腳本,但顯然不是這樣。任何人都知道我能如何解決這個問題?
請注意,在我引入切換按鈕之前,加擾功能工作正常(即用戶將導航到的每個頁面)。然而,切換按鈕是需要的,因爲如果每個頁面都經常被擾亂,它會變得煩人!
背景腳本(background.js)如下:
var toggle = false;
chrome.browserAction.onClicked.addListener(function(tab) {
toggle = !toggle;
if(toggle){
chrome.browserAction.setIcon({path: "WordWelterIcon19x19_On.png", tabId:tab.id});
chrome.browserAction.setTitle({title: "Word Welter On"});
chrome.tabs.executeScript(tab.id, {file:"content_script.js"});
}
else{
chrome.browserAction.setIcon({path: "WordWelterIcon19x19_Off.png", tabId:tab.id});
chrome.browserAction.setTitle({title: "Word Welter Off"});
chrome.tabs.executeScript(tab.id, {code:"window.location.reload();"});
}
});
和我的manifest.json有後臺腳本如下條目:
"background": {
"scripts": ["background.js"]
}
任何幫助表示讚賞。