У меня есть следующий код на моем фоне script:
chrome.tabs.onUpdated.addListener(function(tabId, changeinfo, tab) {
if (changeinfo.status !== 'complete')
return;
if (!matchesUrlFilters(tab.url))
return;
chrome.tabs.executeScript(tabId, { file: "jquery-1.7.1.min.js" }, function() {
chrome.tabs.executeScript(tabId, { file: "enhance.js" });
});
});
Однако в некоторых случаях это, кажется, дважды вставляет мой контент script (это может произойти, когда enhance.js
делает window.history.pushState
).
Как я могу узнать, имеет ли вкладка уже мой контент script? Я пробовал chrome.tabs.sendRequest
, но он никогда не вызывал обратный вызов, если содержимое script еще не было добавлено.