2017-07-03 1 views
0

私は、FireFoxのcontextMenuを使ってWebExtensionを開発しようとしています。現在、私は2つのファイルしか持っておらず、実際の機能はありません。問題は、Mozilla Developer Networkのサンプルコードでもうまくいかないようだから、それが明示されていると仮定していますが、問題を見つけることができません。Mozilla WebExtensions contextMenus.create not working

これは私のmanifest.jsonファイルです:

console.log("Plugin loaded!"); 

browser.contextMenus.create({ 
    id: "radio-green", 
    type: "radio", 
    title: "Make it green", 
    contexts: ["all"], 
    checked: false 
}, onCreated); 

function onCreated() { 
    if (browser.runtime.lastError) { 
    console.log("error creating item:" + browser.runtime.lastError); 
    } else { 
    console.log("item created successfully"); 
    } 
} 

console.log("Test!"); 

ここでの問題は、私は初期を超えて任意のコンソールログを取得しないことです:これは私のfullwindow.jsファイルが

{ 
    "manifest_version": 2, 
    "name": "FullWindow", 
    "version": "1.0", 

    "description": "Test plugin.", 

    "permissions": ["contextMenus"], 

    "content_scripts": [ 
    { 
     "matches": ["<all_urls>"], 
     "js": ["fullwindow.js"] 
    } 
    ] 
} 

である「ロードプラグイン!」私のコンテキストメンテを取得しないでください。

+0

私のプラグインのデバッグ、私は '取得browser.contextMenusはundefined'です。また、 'chrome.contextMenus'を使っても同じ問題が発生します。 – stevenJ

答えて

3

contextMenus APIは、バックグラウンドスクリプトでのみ利用可能であり、コンテンツスクリプトでは利用できません。これは、ここに記載されています:https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Content_scripts#WebExtension_APIs

はwebextensionsのより広範な概要については、このページを参照してください: https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Anatomy_of_a_WebExtension