Расширение Chrome: почему у меня эта ошибка в консоли «фоновой страницы»? - PullRequest
1 голос
/ 23 февраля 2012

Не понимаю, но, похоже, не распознает API Google 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); }

Функция "callBack (информация, вкладка)" ничего не пишет.На фоновой странице есть ошибка, ОШИБКА: Uncaught TypeError: Cannot call method 'create' of undefined.

Все файлы только эти.

ОК, я решил, прочитал, ошибка была сделана, в Интернете, потому что я не былдоступ к странице из вкладки «Расширение», но затем дважды щелкните на background_page.html .... Насколько это тяжело?-.- °

1 Ответ

1 голос
/ 12 ноября 2013

В дополнение к тому, что уже было сказано, если вы все еще обнаружите, что chrome.contextMenus 'undefined', не забудьте удалить-переустановить ваше расширение! Там может быть какое-то странное кеширование; некоторые вещи обновляются во время разработки (т. е. вы можете изменить код, а затем увидеть изменения при повторном запуске вашего расширения), а другие требуют полной переустановки - HTH.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...