У меня есть расширение chrome, которое открывает камеру, когда я нажимаю значок расширения. Я хочу, чтобы после перезагрузки страницы снова показывали камеру. Я использую дополнительные javascript, чтобы проверить страницу показывает камеру или нет. Меня интересует, как я могу отправить сообщение из этого скрипта в скрипт контента и как я могу добавить этот скрипт. Нужно добавить в манифест и как? Скрипт перезагрузки не подключен к фоновому скрипту, может быть, нам нужно добавить перезагрузку. js к файлу манифеста. вот мой код
манифест:
{
"name": "Webcam extension",
"description" : "webcam extension",
"version": "1.0",
"options_page": "options.html",
"icons":{
"128":"./images/webcam.png",
"48":"./images/webcam.png",
"16":"./images/webcam.png"
},
"manifest_version": 2,
"browser_action": {
"default_icon": "./images/webcam.png"
},
"permissions": ["<all_urls>", "activeTab", "tabs", "storage", "http://*/",
"https://*/", "contentSettings" ],
"background": {
"persistent": false,
"scripts":["background.js"]
},
"content_scripts": [
{
"run_at": "document_start",
"matches": ["<all_urls>"],
"css": ["content.css"],
"js": ["jquery.js", "content.js"]
}
]
}
background. js:
chrome.browserAction.onClicked.addListener(function (){
chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
chrome.tabs.sendMessage(tabs[0].id, {ShowCamera:'true'});
});
})
reload. js:
chrome.runtime.onMessage.addListener(
function({ShowCamera}, sender, sendResponse) {
if (ShowCamera === 'true') {
const addCamera = 'addCamera';
chrome.storage.local.set({test: addCamera })
}
});
content.js:
chrome.storage.local.get(['test'], function(result) {
console.log(result.test)
});