Как активировать jquery в расширении Chrome

0

Я только что начал использовать расширение Chrome, и мне нужно использовать jQuery. Я следил за всеми учебниками и ответами Stackoverflow, которые я мог найти, но он просто не работает.

Вот мой файл манифеста:

{
"manifest_version": 2,

 "name": "some.site",
"description": "For adding assets to some.site.com",
"version": "1.0",

"permissions": [
"http://some.site.com",
"storage"
],
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html"
},
"content_scripts": [
{
  "matches": ["http://jquery.com/*"],
  "js": ["jquery-1.11.0.min.js"]
}
]
}

И вот мой HTML:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title></title>
<script src="jquery-1.11.0.min.js" type="text/javascript"></script>
</head>
<body>
<div id="test">hello</div>
</body>

<script>

$('#test').html('booger');

</script>
</html>

Все работает нормально при загрузке непосредственно в браузере, но когда я нажимаю на значок расширения, он не работает.

  • 0
    Вы пытались проверить консоль JavaScript для вашей всплывающей страницы? Т.е. откройте его, щелкните правой кнопкой мыши и выберите «Проверить элемент». Там может появиться полезное сообщение об ошибке. Кроме того, находятся ли jquery-1.11.0.min.js и popup.html в одном каталоге? (Я полагаю, они так и есть, поскольку вы сказали, что это работает, когда загружается напрямую ...)
Теги:
google-chrome-extension

1 ответ

3
Лучший ответ

Вы не можете писать встроенные скрипты внутри расширения Chrome из-за политики безопасности контента, поэтому следующий встроенный код:

<script>

$('#test').html('booger');

</script>

даже не выполнит. Вы должны перенести его в отдельный файл.

Подробнее об этом (и приятных примерах) в Руководстве разработчика Chrome.

Причина, по которой он работает при загрузке напрямую, заключается в том, что тогда вы просто обрабатываете страницу как html-документ. Chrome не загружает его как расширение, поэтому любые ограничения не применяются.

  • 0
    Совпадает с jquery.com неправильно. Смотрите документы о «матчах»
  • 0
    Это еще одна часть истории :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню