当用户单击活动网页中的元素时,如何打开扩展弹出窗口?

时间:2019-01-09 18:28:10

标签: google-chrome-extension

我正在开发chrome扩展程序,并已配置了后台脚本。我想在该脚本中创建一个事件侦听器,该侦听器将侦听浏览器中的单击事件。例如,我在网站上有一个按钮,如果单击了该按钮,我希望后台脚本监听该单击事件并打开一个弹出窗口

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。我必须将以下代码添加到我的网站

// extensionId can be found on the extensions tab

window.chrome.runtime.sendMessage(extensionId, {
  data: 'abcd'
});

在我的扩展程序后台脚本中

chrome.runtime.onMessageExternal.addListener(data => {
  window.open('popup.html', 'extension_popup', 'width=400,height=600,status=no,scrollbars=yes,resizable=no');
});

我还必须在manifest.json中添加以下属性,以便扩展后台脚本可以侦听matchs属性中URL列表中的事件。

"externally_connectable": {
  "matches": [
    "http://localhost:3000/*"
  ]
}
"permissions": [
  ...,
  "http://localhost:3000"
]