javascript - 在 chrome.runtime.onMessage.addListener 中调用函数

标签 javascript google-chrome google-chrome-extension

我正在创建一个 Google Chrome 扩展程序,并且有一个 background.js 和一个 content_script.js。当网页加载时,我向内容脚本发送一条消息以运行函数;不幸的是它的表现并不如预期。有问题的代码位于我的 content_script.js 文件中,如下所示:

chrome.runtime.onMessage.addListener(
    function(request, sender, sendResponse) {
        alert("Test 1 2 3");
        welcome(tab);
    }
);

我有一个名为 welcome(tab) 的函数,它将当前选项卡作为参数并执行一些任意函数。我知道正在收到消息,因为 alert 总是会发生,但 welcome 函数永远不会执行。我知道 welcome 功能有效,我已经做了很多测试。当我添加 addListener 时,事情停止了。有什么建议么?到目前为止我已经到处找过了。另外,这可能与 addListener 函数不知道全局 tab 变量是什么有关吗?

最佳答案

我认为问题出在此处的选项卡上。看看这个:https://developer.chrome.com/extensions/messaging

chrome.runtime.onMessage.addListener(
    function(request, sender, sendResponse) {
        alert("Test 1 2 3");
        welcome(sender.tab);
    }
);

关于javascript - 在 chrome.runtime.onMessage.addListener 中调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37468776/

相关文章:

javascript - 在 Javascript 中,保留关键字 "short"有什么作用?

javascript - 使用 jquery 动态添加目标按钮(无事件)

java - 在 javascript 调用函数中,同时必须调用 java 函数

javascript - 使用 Javascript 调整窗口大小时调整图像大小 - 在 Chrome 中不起作用

html - 为什么这个按钮在IE9中显示为蓝色?

javascript - 处理跨域中 REST 响应的 301 和位置 header

javascript - Chrome 调试器中的这个十六进制值是什么意思?

javascript - Chrome 扩展程序,javascript : Tab giving me an error

css - 覆盖 Chrome 扩展页面 CSS

javascript - 如何自动将 JavaScript 注入(inject)网页,以便可以从开发人员控制台访问其变量