我正在开发谷歌Chrome扩展应用程序。我想,只要用户在浏览器选项卡上的http请求完成,就会给出一些警告。意味着浏览器完成其请求应用程序可以听取它。
现在我正在使用下面的代码。它在请求完成后读取tab url。
chrome.webRequest.onCompleted.addListener(function() {
var mydiv = document.createElement('div');
chrome.tabs.getSelected(null,function(tab) {
mydiv.innerHTML = tab.url;
});
document.body.appendChild(mydiv);
});
但它不适合我。有什么帮助吗?
答案 0 :(得分:1)
您可能正在运行背景页面中的代码(否则 chrome.webRequest API 将无法使用。从那里(背景页面),无法与网页DOM进行交互。
你可以达到你想要的效果:
解决方案A
内容脚本(一旦注入)将创建您的div
并将其添加到DOM。
解决方案B
让您的背景页面监听页面加载。 BTW, chrome.tabs.onUpdated 可能更适合这项任务。 E.g:
chrome.tabs.onUpdated.addListener(function(tabId, info, tab) { if (info.status && (info.status == "complete")) { // The page is loaded, so inject a content script } });
在页面加载 programmatically inject 内容脚本时。
内容脚本(一旦注入)将创建您的div
并将其添加到DOM。