Ответ 1
В расширении Chrome внешние источники script должны быть явно разрешены расширением политика безопасности содержимого (CSP) в вашем манифесте:
Если у вас есть потребность в каких-либо внешних ресурсах JavaScript или объектов, вы можете в некоторой степени ослабить политику, указав безопасные источники, из которых должны быть приняты сценарии...
Облегченное определение политики, которое позволяет загружать ресурсы script из example.com через HTTPS, выглядит так:
"content_security_policy":"script-src 'self' https://example.com; object-src 'self'"
Скрипты могут быть загружены только в расширение по HTTPS, поэтому вы должны загрузить ресурс CDN jQuery через HTTPS:
<script src="https://ajax.googleapis.com/..."></script>
И добавьте измененный CSP в манифест, чтобы разрешить этот ресурс HTTPS:
{
"manifest_version": 2,
"name": "One-click Kittens",
"description": "This extension demonstrates a 'browser action' with kittens.",
"version": "1.0",
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html"
},
"content_security_policy": "script-src 'self' https://ajax.googleapis.com; object-src 'self'"
}
И даже лучшим решением для вашего конкретного случая было бы включить jQuery в расширение на локальном компьютере вместо загрузки из Интернета (например, ваше расширение в настоящее время не будет работать в автономном режиме). Просто включите копию jQuery в папку расширения и обратитесь к ней с относительным путем в тэге script. Предполагая, что ваша библиотека jQuery и всплывающий файл HTML находятся в одном и том же подкаталоге, просто выполните:
<script src="jquery-x.y.z.min.js"></script>