Всем привет! Изучаю создание расширения для Гугл и не могу понять, почему скрипт не может найти элемент во всплывающем окне, которое появляется при клике на иконку этого расширения. В варианте ниже я получаю null в консоль. Подскажите, пожалуйста.
manifest.json
{
"manifest_version": 2,
"name": "Payuot from test account",
"description": "Payout extantion for test account.",
"version": "0.1",
"browser_action": {
"default_title": "Simulation payout",
"default_popup": "popup.html"
},
"background": {
"scripts": ["background.js"],
"persistent": false
},
"content_scripts": [
{
"matches": ["https://*.com/*"],
"js": ["popup.js"]
}
],
"permissions": [
"activeTab",
"storage"
]
}
popup.html
<!DOCTYPE html>
<html>
<head>
<title></title>
<style>
body {
width: 150px;
height: 15px;
}
</style>
</head>
<body>
<label><input id="check" type="checkbox" /> Payout on/off </label>
<script src="popup.js"></script>
</body>
</html>
popup.js
function checkedConfirme() {
const checkbox = document.getElementById('check');
console.log(checkbox);
}
checkedConfirme();
Ваш popup.js рабочий, хоть и используете вы его не совсем правильно: в манефесте он указан в как в качестве content-script, так и в качестве popop-скрипта для browser_action (рекомендуется иметь отдельные скрипты для каждого модуля).
Тем не менее, popup – это отдельная веб-страница, и для того, чтобы увидеть результат выполнения скрипта вам необходимо нажать правой кнопкой мыши на иконку в области рашсирений и выбрать там инспектор (последний пункт). В консоле будет искомый элемент.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости