0

私はクロム拡張に取り組んでおり、それは contextMenu であり、右クリック メニューに表示されます。しかし、問題は、右クリック メニューに表示させるには、Chrome の右上隅から拡張機能を開く必要があることです。私のJavaScriptは外部です。ここに私のJavaScriptコードがあります:

window.onload = myOnload;
function myOnload(){
  var button = document.getElementById("button");
  button.onclick= function(){myClick()};
  chrome.contextMenus.create({
      "title":"MissLang Fix",
      "contexts":["all"]
  });
  document.getElementById("input").innerHTML = "mojtaba";
}


function myClick(){
    var myString = document.getElementById("input").value;

    for(var i=0;i<myString.length;i++){
        myString = myString.replace("q","ض");
        myString = myString.replace("w","ص");
    }

    document.getElementById("output").innerHTML = myString;
}

ここに私のmanifest.jsonコードがあります:

{
    "name": "MissLang Fix extension",
    "manifest_version": 2,
    "version": "1.0",
    "description": "fixing english to farsi typings.",
    "icons":{
        "16":"icon_16.png",
        "128":"icon_128.png"
    },

    "browser_action":   {
        "default_icon": "icon.png",
        "default_popup": "missLangFix.html"
    },

    "permissions": [
        "tabs",
        "contextMenus",
    ]

}

ユーザーがアドレスバーの右側から拡張機能を開く前でも、右クリックメニューにアイコンを表示するには、 chrome.contextMenus.create コードをどこに配置すればよいか知りたかったのです。
本当にありがとう

4

1 に答える 1

1

背景ページが必要です。

manifest.json

...
"background": {
  "scripts": ["background.js"]
},
...

background.jsユーザーがブラウザを開いたときにスクリプトが実行されるように、スクリプトを内部に配置します。

おまけ(関連)

次の方法で、ユーザーが Windows/Apple/Linux にログインしたときに拡張機能を実行することもできます。

"permissions": [
    "background"
]
于 2013-04-13T06:54:57.380 に答える