在页与扩展之间传递消息
Message passing between page to extension
所以我有脚本,不执行网页只在扩展工作,
document.getElementById("test").addEventListener("click", function () {
var e = document.getElementById("exe");
var strUser = e.options[e.selectedIndex].value;
if (strUser == "note") {
chrome.extension.connectNative('note');
}
if (strUser == "calc") {
chrome.extension.connectNative('calc');
}
});
我明白其中的逻辑,但我缺乏做这件事的经验。据我所知,我需要通过消息传递传递我的脚本函数到html
页,但我不能这样做。我不知道。eq
chrome.extension
, 不出所料,只对扩展代码可用。顺便说一下,你应该真正使用chrome.runtime.connectNative
,但同样适用。
你有两个选项:
-
添加一个内容脚本到页面,让它添加一个点击监听器,然后将请求传递到您的后台页面。内容脚本可以和你的后台通信,但是不能自己执行
connectNative
。 -
如果这是一个固定的网站,您可以使网站本身发送消息到扩展的背景页面。这使用
externally_connectable
,在这里解释。
同样,您需要一个后台脚本(在事件脚本上)来处理启动某事的请求,因为这是唯一的东西,(1)有足够的特权来执行它,(2)始终可用来处理请求。
相关文章:
- Node.js上的WebSocket,并在所有连接的客户端之间共享消息
- 如何在弹出脚本到内容脚本之间发送消息并返回
- 通过node.js和socket.io在两个用户之间发送消息
- 如何在Chrome扩展弹出窗口和内容脚本之间发送消息
- 在主干.js视图之间传递消息
- 在页面之间显示“页面加载”消息
- 发布两个网站之间的消息
- PHP 和 Jquery 之间的消息传递
- 在操作之间发送 Ajax 消息集超时 m 延迟
- 无法在TCP服务器和节点.js之间发送消息
- Chrome 扩展程序:无法让消息传递在后台脚本和内容脚本之间正常工作
- javascript/整个脚本块(在脚本标记之间)被禁用,没有错误消息
- 如何使用端口在main.js和面板之间传输消息'的内容脚本
- 在format.html和format.js之间显示Rails3 Flash消息
- 两个窗口或选项卡之间的跨文档消息传递,而不是iframe
- 在树莓派上的HTML和python之间发送消息
- Chrome扩展消息在内容和后台之间传递
- 内容脚本和背景页面之间的消息传递在chrome扩展是不工作,因为它应该是
- Firefox插件之间的消息
- FCM -下游消息和上游消息之间的差异