Google chrome extension 运行函数但未找到的Chrome插件

Google chrome extension 运行函数但未找到的Chrome插件,google-chrome-extension,Google Chrome Extension,我希望我的插件能够插入,这样当我点击按钮时,它就会在当前选项卡中运行一个函数。但是,它给了我一个函数未找到的错误。。有没有办法做到这一点 这是我的popup.html: <script> function start() { chrome.tabs.executeScript( null, { code: "func_in_body()", allFrames: true } ); }

我希望我的插件能够插入,这样当我点击按钮时,它就会在当前选项卡中运行一个函数。但是,它给了我一个函数未找到的错误。。有没有办法做到这一点

这是我的popup.html:

<script>
    function start() {
        chrome.tabs.executeScript( null,
            { code: "func_in_body()",
            allFrames: true } 
        );
    }

    start();
</script>

尽管其中一个按钮的onclick使用它。我不确定是否存在范围问题。

您注入到选项卡中的JavaScript是在隔离环境中执行的,无法访问JavaScript页面。您可以在中了解更多信息。

在当前选项卡上执行函数或脚本不需要弹出窗口。我所做的是,我制作了一个背景页面,其中包括:

<html>
<head>
<script>
var iconName = "icon.png";
chrome.browserAction.setIcon({path:iconName});


  function onClicked(){
      chrome.tabs.executeScript(null, {file: "content_script.js"});
  }



  chrome.browserAction.onClicked.addListener(onClicked);
</script>
</head>
</html>
最后一件事就是创建content_script.js(或者你叫它什么),然后在那里输入你的代码

编辑: 不要忘记添加您的脚本可以在每个站点上执行的权限

...
"permissions": [
        "tabs",
        "http://*/*",
        "https://*/*"
    ],
...

有没有佳能的方法可以在不传递所有信息的情况下处理这个问题?
...
"background_page": "background.html",
...
...
"permissions": [
        "tabs",
        "http://*/*",
        "https://*/*"
    ],
...