最初のChrome拡張機能を正常に作成しました。これは、拡張機能アイコンが背景ではなくクリックされた場合にのみ実行されるようになりました。これはすばらしいことです。ただし、拡張機能ポップアップを使用して他の機能を実行しようとしていた拡張機能にアクションを追加したいのですが、機能させることができません。そのようにする必要はないので、私は提案を受け付けています。コンテキストメニューは使いたくない。拡張機能のアイコンをクリックして、「メニュー」を表示してもらいたいです。
現在、私の拡張機能は、(mydomain.comからの)有効なページが見つかった場合にのみメッセージを警告し、「returnURL」という名前の非表示フィールドを見つけます。値を警告します。
アイコンをクリックする機能を追加できるようにしたいのですが、代わりに複数のオプションを含むオプションメニューを表示します。
このようなもの:
拡張機能アイコンをクリックして、2つのオプションを表示します
- 応答URLを取得します(このオプションは、現在の機能を実行します)
- 他のことをする(ロードされたページで実行する別の関数を持つことができるように)
...拡張機能の将来のバージョンに追加する必要がある場合は、さらに多くのオプションがあります。
それを行うために拡張機能を変更するにはどうすればよいですか。
これが私のコードです:
マニフェスト.json
{
"name": "Get Response URL",
"version": "1.0",
"manifest_version": 2,
"browser_action": {
"default_icon": "mkto_icon.png",
"name": "Click to get URL"
},
"background":{
"scripts":["background.js"]
},
"permissions":["http://mydomain.com/*"]
}
background.js
chrome.browserAction.onClicked.addListener(function (tab) { //Fired when User Clicks ICON
if (tab.url.indexOf("http://mydomain.com/") != -1) { // Inspect whether the place where user clicked matches with our list of URL
chrome.tabs.executeScript(tab.id, {
"file": "contentscript.js"
}, function () { // Execute your code
console.log("Script Executed .. "); // Notification on Completion
});
}
});
contentscript.js
if (document.getElementsByName("returnURL")){
alert("\nThe Response URL on this form is:\n\n" + document.getElementsByName("returnURL")[0].value);
}
Google拡張機能の開発者サイトで見つけたドキュメントに従いましたが、機能させることができませんでした。あなたの助けは大歓迎です。