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