2012-02-23 11 views
1

私は理解していませんが、おそらくapiのGoogle Chromeを認識していないようです。Chrome拡張機能:なぜ「バックグラウンドページ」のコンソールにこのエラーがありますか?

マニフェスト:

{ 
    "name": "First Extension", 
    "version": "1.0", 
    "description": "The first extensione tha I made", 
    "permissions":["contextMenus"], 
    "background_page": "background_page.html" 
} 

背景ページ:

<!doctype html> 
<html> 
    <head> 
    <title>Background Page</title> 
    <script src="script.js"></script> 
    </head> 
    <body> 
    </body> 
</html> 

のJavascript(script.js):

if (window.webkitNotifications) { 
    console.log("Notifications are supported!"); 
} 
else { 
    console.log("Notifications are not supported for this Browser/OS version yet."); 
} 
/////////// BROWSER CONTEXT MENU //////////////// 
var arr_context = ["all", "page", "frame", "selection", "link", "editable", "image", "video", "audio"]; 
for(i=0; i<arr_context.length; i++){ 
    var title = arr_context[i]; 
    var menu1 = chrome.contextMenus.create({"type":"normal", "title":"Menu "+title, "contexts":arr_context, "onclick":callBack }); 
} 


function callBack(info, tab){ console.log(info.menuItemId+"; URL: "+tab.url); } 

機能 "コールバック(情報、タブ)" 書きません何でもバックグラウンドページにエラーがあります。エラーはUncaught TypeError: Cannot call method 'create' of undefinedです。

すべてのファイルは、これらのみです。

[OK]をクリックすると、エクステンションタブから ページにアクセスしていないため、インターネット上で間違いを読んだが、background_page.htmlをダブルクリックした。 -.-°

+0

'chrome:// extensions'から' background_page'コンソールを開いた場合、 'chrome.contextMenues'が定義されています。あなたは手動で' chrome.contextMenues.create() 'を呼び出すことができますか? – abraham

+0

' ** chrome.contextMenues()** TypeError例外:オブジェクト[オブジェクトのオブジェクト]はない方法有し 'contextMenues' **クロム** オブジェクト** chrome.contextMenues.create(); ** TypeError:未定義のメソッド 'create'を呼び出せません ' – Donovant

+1

'chrome.contextMenus'は' chrome.contextMenus() 'ではありません。アップデート:私は 'contextMenus'を間違って綴った最初のコメントに誤字がありました。もう一回やってみよう。 – abraham

答えて

1

chrome.contextMenusがまだ未定義であることが判明した場合は、拡張機能をアンインストールしてから再インストールしてください。奇妙なキャッシングが発生している可能性があります。あなたの開発中にいくつかのものが更新されます(つまり、あなたはコードを変更して拡張機能を再トリガする際の変更を見ることができます)、そして他のものは完全に再インストールする必要があります - HTH。

関連する問題