首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >chrome.extension.onMessage未定义

chrome.extension.onMessage未定义
EN

Stack Overflow用户
提问于 2012-06-28 22:16:15
回答 3查看 3.5K关注 0票数 7

我有一个简单的插件,可以做这样的事情:

代码语言:javascript
运行
复制
chrome.extension.onMessage.addListener(function(msg, _, sendResponse) {
    log("Got message from background page: " + msg);
});

不幸的是,当我的面板被加载时,会显示以下错误:

代码语言:javascript
运行
复制
TypeError: Cannot call method 'addListener' of undefined

根据我的测试,chrome.extension.onMessageundefined

根据这个页面http://code.google.com/chrome/extensions/messaging.html,我应该能够从我的页面访问这个chrome API,所以它必须是我在这里遗漏的小东西…

EN

回答 3

Stack Overflow用户

发布于 2012-06-29 23:07:33

请注意,此答案中最初建议的chrome.extension.onRequest chrome.extension.sendRequest**,和方法已从Chrome 33起弃用。**

你应该使用

代码语言:javascript
运行
复制
chrome.extension.onRequest

而不是

代码语言:javascript
运行
复制
chrome.extension.onMessage

在后台页面或任何其他扩展脚本中:

代码语言:javascript
运行
复制
chrome.tabs.sendRequest

而不是

代码语言:javascript
运行
复制
chrome.tabs.sendMessage

(文档已过时...提醒google团队;) )

票数 3
EN

Stack Overflow用户

发布于 2012-10-11 16:12:47

顺便说一句: Yandex浏览器(主要面向俄罗斯人)也是基于Chromium still (截至2012年11月10日,版本)。1.0)具有.*Request方法,而不是.*Message。非常感谢Ciprian Amariei的提示,它为我节省了很多时间!

PS:这实际上应该是对Ciprian Amariei的回答的评论,但不幸的是,我还不能留下评论,我认为这些信息对那些为Yandex浏览器开发扩展的人非常有帮助。

票数 0
EN

Stack Overflow用户

发布于 2013-01-21 16:05:21

请确保您使用的是最新的Google Chrome版本。旧版本没有chrome.extension.onMessage接口。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11246646

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档