Сделал расширение, при клике на его иконку всплывает pop-up с кнопкой при нажатии на которую, открываются все ссылки на странице с определенным классом. Проблема в том, что расширение не работает со страницей, то есть не открывает ссылки с неё, а открывает ссылки только внутри себя (с файла popup.html). Как сделать, чтобы при нажатии на кнопку с popup.html запускался скрипт работы с содержимым страницы?
Вот код скрипта:
document.addEventListener('DOMContentLoaded', function() {
let openScreensBtn = document.getElementById('btnScreens');
openScreensBtn.addEventListener('click', function() {
let links = document.querySelectorAll('.link');
let arrLinks = Array.from(links);
let arrHref = [];
for (let i = 0; i < arrLinks.length; i++) {
arrHref.push(arrLinks[i].getAttribute('href'));
};
for (let i = 0; i < arrHref.length; i++) {
window.open(arrHref[i], '_blank');
};
});
});
Вот код popup.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Index</title>
<script src="popup.js"></script>
</head>
<body>
<button id="btnScreens">Open Screens</button>
</body>
</html>
manifest.json
{
"name": "Ext",
"description" : "",
"version": "1.0",
"manifest_version": 2,
"browser_action": {
"default_icon": "128.png",
"default_popup": "popup.html"
},
"permissions": [
"activeTab"
]
}
Воспользуйтесь методом chrome.tabs.create:
chrome.tabs.create({url: arrHref[i]});
При этом в permission
(manifest.json) необходимо добавить разрешение на tabs
.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Запускаем Selenium-сервер (elgalu/docker-selenium):
есть функция которая запускает таймер на сервере node js
Я новичок в сайтостроительстве и недавно таки выложил свой первый сайтНо сразу возникла проблема с прогрузкой аудио