我正在编写一个Chrome扩展程序,并注入了一个内容脚本,该脚本会循环访问几个元素,onclick
并向它们附加一个属性,该属性会将消息发送到我的后台脚本,以在DOM上执行自定义功能(该功能已定义在内容脚本中)。要将消息从网页发送到扩展,必须指定扩展ID,到目前为止,我是从扩展菜单中手动获取的。我是否可以查询扩展名自己的ID,以便注入与内容脚本对话的代码?还有另一种方法可以做我想做的事吗?
为每个元素注入到DOM中的代码如下所示
targets[current].element.setAttribute("onclick", `chrome.runtime.sendMessage(${EXTENSION_ID}, this.id)`);
有多种方法可以在您正在查看的特定选项卡和后台脚本之间交换信息。您可以查看这些答案。
您的Chrome扩展程序ID问题的解决方案是使用chrome.runtime.id
获取扩展程序ID,并将其与其他代码一起注入所需的页面,然后使用它发送回消息。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句