Я пытаюсь понять фоновые страницы Chrome. Мне удалось запустить скрипт background.js после каннибализации примеров, и он появляется с окном предупреждения каждый раз, когда пользователь посещает страницу. Однако, когда я беру тот же скрипт и перемещаю его в файл background.html, я не могу заставить файл выполняться.
Я обновил файл манифеста на страницу (вместо сценария ), и расширение загружается нормально. Я также пытался поиграть с javascript в теге script непосредственно в теле или в функции, которая сейчас называется onload в теле или в голове.
Возможно, я не понимаю, для чего страница background.html используется в расширении Chrome?
Файл манифеста:
{
"name": "Testing Extension",
"version": "0.2",
"background": { "pages": ["background.html"] },
"permissions": [
"tabs", "https://mail.google.com/*", "http://*/*, https://*/*"
],
"browser_action": {
"name": "Do some action",
"icons": ["icon.png"]
},
"manifest_version": 2,
"web_accessible_resources": ["injectImage.js", "background.html"]
}
injectImage.js
alert('Got Here');
'use strict';
chrome.browserAction.onClicked.addListener(function (tab) {
chrome.tabs.executeScript(null, {file: "injectImage.js"});
});
chrome.browserAction.setBadgeBackgroundColor({color: [0, 200, 0, 100]});
var i = 0;
window.setInterval(function () {
chrome.browserAction.setBadgeText({text: String(i)});
i++;
}, 10);
background.html
<!DOCTYPE html>
<html>
<head>
<script src="jquery-1.8.0.min.js"></script>
<script src="injectImage.js"></script>
</head>
<body>
</body>
</html>
в настоящее время этот код, похоже, не делает ничего, кроме размещения значка в правом верхнем углу.