我希望我的Chrome擴展程序能夠像這樣運行:如何使用Background.js更新選項卡然後執行內容腳本?
用戶單擊該圖標,即會顯示硬編碼的URL「www.example.com」。它不會打開新選項卡,而是更新窗口。然後,我想執行內容腳本並能夠在更新的頁面上提醒「正在工作」。
這裏是我到目前爲止有:
Background.js
chrome.browserAction.onClicked.addListener(function(activeTab)
{
chrome.tabs.query({'active': true, 'lastFocusedWindow': true}, function
(tabs)
{
chrome.tabs.update({
url: "http://www.example.com/"
});
});
function test()
{
chrome.tabs.executeScript(null, {file: "myscript.js"});
}
chrome.tabs.onUpdated.addListener(function(tabid, changeinfo, tab) {
var url = tab.url;
if (url !== undefined && changeinfo.status == "complete") {
test();
}
});
});
內容腳本
alert('working');
結果是奇數。當我點擊圖標時,它會提示example.com很好,但是有時候警報有效,有時不會。即使是更奇怪的,如果我雙擊它,它會更頻繁地工作,但如果我點擊它一堆,警報加起來,然後我一次獲得許多警報(我只是想要一個)。