Google chrome extension Chrome扩展不';我不能一路执行

Google chrome extension Chrome扩展不';我不能一路执行,google-chrome-extension,Google Chrome Extension,这个想法很简单。打开一个窗口,然后在该新窗口上调用chrome.tabs.executeScript function openc(url) { window.open(url); chrome.tabs.executeScript(null, {file: "removeContent.js"}); console.log("hi"); } document.addEventListener('DOMContentLoaded', function () { openc("h

这个想法很简单。打开一个窗口,然后在该新窗口上调用chrome.tabs.executeScript

function openc(url) {
  window.open(url);
  chrome.tabs.executeScript(null, {file: "removeContent.js"});
  console.log("hi");
}

document.addEventListener('DOMContentLoaded', function () {
  openc("http://www.asdf.com/");
});
不幸的是,除了打开一个新窗口,它什么也做不了

function openc(url) {
  window.open(url);
  chrome.tabs.executeScript(null, {file: "removeContent.js"});
  console.log("hi");
}

document.addEventListener('DOMContentLoaded', function () {
  openc("http://www.asdf.com/");
});

首先,确保你有足够的时间在页面上操作

如果始终希望在特定页面上运行脚本,则只使用内容脚本即可,方法是:

如果要动态执行新页面的内容脚本,应使用该方法打开新选项卡,并将脚本插入回调中。这些方法只能在扩展的进程中使用,因此请确保代码在后台/event/popup/options/上运行。。页面

chrome.tabs.create({
    url: 'http://www.asdf.com/'
}, function(tab) {
    chrome.tabs.executeScript(tab.id, {file: "removeContent.js"}, function() {
        if (chrome.runtime.lastError) {
            console.error(chrome.runtime.lastError.message);
        }
    });
});

chrome.tabs.create工作得很漂亮。不过有几个问题:什么是“函数(tab)”中的“tab”?当我尝试使用window.open(url)时,为什么它不起作用?@user2152914单击我回答中的蓝色链接,它会将您带到文档,其中解释了选项卡的含义。
选项卡
提供有关您刚刚创建的选项卡的信息,该选项卡的标识符被传递到
chrome.tabs.executeScript
<代码>窗口。打开不提供此标识符,因此Chrome不知道要在该窗口中插入什么内容脚本。