3

我有一个 chrome 扩展,我想在按下弹出窗口时触发它。目前,只有从 manifest.json 中删除 popup.html 才能执行此操作,因为对此有限制。但是,我需要 popup.html

我如何获得两者?

我尝试在任何地方放置完全相同的东西,在 popup.html 中,在 popup.js 中(在 popup.html 中正确链接),什么都没有。

简而言之,如果我把它放在 background.js 中:

chrome.browserAction.onClicked.addListener(function(info, tab) {
    speakMe();
    });

有用。

但是,这意味着清单中没有 popup.html。所以,自然地,我尝试放置这个:

    <script>
    chrome.browserAction.onClicked.addListener(function(info, tab) {
  speakMe();
});
    </script>

在 popup.html 中。它不起作用。按图标正常显示弹出窗口,但没有任何反应。

我也尝试将它放在 popup.js 中,但仍然没有。我究竟做错了什么?

4

1 回答 1

2

在你的 popup.js 中添加一个 onload 监听器:

onload = function() { console.log("I loaded!"); };

在该功能中,您可以在弹出窗口出现时做一些有趣的事情。如果您想获得更多花哨,您可能会遇到https://code.google.com/p/chromium/issues/detail?id=31262中描述的问题。

顺便说一句,您还没有告诉我们“它不起作用”是什么意思(哪一行失败?是否有控制台错误消息?),因此很难确定这个答案(或任何答案)对您有帮助。请参阅https://meta.stackexchange.com/questions/156810/stack-overflow-question-checklist以了解确保给出的答案是您的问题的答案的步骤。

于 2013-07-15T04:08:32.177 回答