1
我是Google Chrome扩展开发人员的新手,我正在运行一个导致内容脚本未能执行的问题。以下是该问题的详细说明。Chrome扩展程序 - 事件页面/消息传递不起作用
我工作的延伸阅读来自网站的一些内容DOM每说example.com我有以下文件和它的各部分代码。
清单
{
"manifest_version" : 2,
"name" : "My First Chrome App",
"description" : "My First Chrome App",
"version": "1.0",
"browser_action" : {
"default_title" : "Hello"
},
"permissions" : ["tabs"],
"background" : {
"scripts" : ["background.js"],
"persistence" : false
},
"content_scripts":[
{
"matches": [
"http://example.com/HomePage.aspx"
],
"js": ["jquery_224.js", "content_script.js"]
}]
}
background.js
我的目的是创建一个标签和冲浪到在下面的脚本中提到的页面。而且,它必须将消息发送到content_script.js
chrome.browserAction.onClicked.addListener(function(){
chrome.tabs.create({ url: "http://example.com/HomePage.aspx" }, function(tab){
chrome.runtime.sendMessage({authKey : "parse-dom"});
setTimeout(function(){
chrome.tabs.remove(tab.id);
}, 2000);
});
});.
content_script.js
在这里,我想读我是从我的background.js
chrome.runtime.onMessage.addListener(function(request,sender,response){
alert(request.authKey);
});
发送它的
authKey
不幸的是,我没有收到警报,也没有看到任何脚本错误。我已经通过了Chrome Messaging API和跟着相同
我在哪里出错了?
没有工作。暂时,我已经删除了'setTimeout'实现。顺便说一句,纠正了我的问题** HTTP **和** HTTPS ** – Sriram
**怎么样** chrome.tabs.sendMessage(tab.id,{authKey:“parse-dom”})**甚至把它放入一个超时** setTimeout(()=> {chrome.tabs.sendMessage(tab.id,{authKey:“parse-dom”})},1000); ** – Andrea
用这个'chrome.tabs.sendMessage(tab .id,{authKey:“parse-dom”});'。没有工作。在这种情况下,真的不需要使用'setTimeout'功能。 – Sriram