问题描述
我正在制作 chrome 扩展,并尝试从 chrome 扩展页面向 content.js 发送消息。我知道为了做到这一点,我需要将消息发送到 bakcground.js 并通过将其发送到特定选项卡将其转发到 content.js。我做了很多次,没有遇到任何问题,但这次它不起作用。
chrome.runtime.sendMessage({
name: "stop"
})
background.js:
chrome.tabs.query({},tabs => {
for (let i = 0; i < tabs.length; i++) {
if (tabs[i].status == "complete") {
chrome.tabs.sendMessage(tabs[i].id,{ msg: "Hello" })
}
}
})
content.js:
function recieve(msg) {
console.log(msg)
}
chrome.runtime.onMessage.addListener(recieve)
manifest.json:
{
"manifest_version": 2,"name": "app","description": "app description","version": "3.0.0","icons": {
"19": "./images/icon_19.png","128": "./images/icon_128.png","150": "./images/icon_150.png"
},"browser_action": {
"default_title": "title"
},"permissions": [
"tabs","alarms","notifications"
],"content_scripts": [
{
"matches": [
"<all_urls>"
],"js": [
"jquery-3.4.1.min.js","content.js"
]
}
],"background": {
"scripts": [
"background.js"
]
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)