3

私はクロムの拡張機能を作っています。Web ページからデータを取得し、ローカルの電子メール クライアントを介して電子メールで送信します。ユーザーがスクリプトを呼び出すためにクリックする必要があるツールバーボタンがあります。

私のスクリプトは、選択したいくつかの URL で機能します。URLがリストに含まれているかどうかに基づいて、ツールバーボタンのアイコンを変更したい。たとえば、site1 の場合は redicon.png、site2 の場合は blueicon.png にする必要があります。chrome.browserAction.setIcon を使用してボタン アイコンを変更できます。しかし問題は、この API がコンテンツ スクリプトで機能しないことです。background.js ファイルでは正常に機能しますが、content.js では機能しません。これを達成する方法を教えてください。

代わりに pageAction を使用するとうまくいくことはわかっていますが、クライアントの要件は、ツールバーのアイコンが表示されたり消えたりするのではなく、変化することです。

4

1 に答える 1

5

あなたが読む必要があるのはメッセージパッシングです。そうです、コンテンツ スクリプトには制限付きの chrome API があります。ただし、コンテンツ スクリプトからバックグラウンド ページにアクセスして、chrome API から何かを実行するように指示することはできます。まず、メッセージを待機するバックグラウンド ページにリスナーを作成し、コンテンツ スクリプトからメッセージを送信する必要があります。

于 2012-06-22T11:32:30.270 に答える