webExtensionを作成したいのですが、この拡張機能用のツールバーにアイコンがあります。私はこのコードを入れて、私のmanifest.jsonをファイルで :ツールバーにこの拡張機能のアイコン上ユーザがツールバーの拡張機能アイコンをクリックしたときにwebExtensionによってドキュメント要素を変更するにはどうすればよいですか?
{
"manifest_version": 2,
"name": "test",
"version": "1.0",
"description": "test",
"icons": {
"48": "icons/icon48.png",
"96": "icons/icon96.png"
},
"background": {
"scripts": ["background.js"]
},
"permissions": [
"activeTab",
"contextMenus"
],
"browser_action": {
"default_icon": {
"19": "button/btn19.png",
"38": "button/btn38.png"
},
"default_title": "test"
}
}
ユーザーのクリックを、私は、現在のページの要素を取得し、<に私がしたい文書の>タグを追加します。私はこのJavaスクリプトコードをbackground.jsファイルに入れました。しかし、これらのコードは実行されません。 これを修正するにはどうすればよいですか?
background.js:
function change() {
var elems = document.body.getElementsByTagName("*");
var re = new RegExp(/abba\b/g);
for (var i = 0; i < elems.length; i++) {
var str = elems[i].innerHTML;
if (!str.match(/<[a-zA-Z0-9\s:./\"\'=\\;()-_]*>/) && re.test(str)) {
var aTag = document.createElement("a");
aTag.setAttribute('href', "test.php?t=" + str.match(/abba\b/)[0]);
aTag.setAttribute('target', "_blank");
aTag.innerHTML = " --**CHANGES**-- ";
elems[i].appendChild(aTag);
}
}
}
browser.browserAction.onClicked.addListener(change);