У меня есть расширение Google Chrome со страницей popup.html.Расширение Chrome не будет получать URL с первой попытки
Единственный сценарий, который начинается при загрузке страницы:
document.addEventListener('DOMContentLoaded', function() {
window.domain = "";
chrome.tabs.getSelected(function (tabs) {
window.domain = tabs.url;
console.log(window.domain);
});
window.enabled = true;
domain = window.domain;
checkStatus();
});
функция checkStatus является:
function checkStatus() {
if (enabled === true) {
$(".status").html("Enabled");
$(".statusContainer").css("background-color", "rgb(24, 150, 71)");
$(".powerButton").attr("src", "images/enabled.png");
$(".questionContainer").show("fast");
$(".domain").html("on " + window.domain);
}
else if (enabled === false){
$(".status").html("Disabled");
$(".statusContainer").css("background-color", "rgb(102, 102, 102)");
$(".powerButton").attr("src", "images/disabled.png");
$(".questionContainer").hide("fast");
}
}
однако, когда я нажимаю на значок внутренней линии, чтобы открыть страницу, я только например, «on» вместо «на google.com». Однако, когда я проверяю всплывающее окно и переключаюсь на консоль и снова запускаю checkStatus, расширение отображается «на google.com», если я нахожусь в Google, например.
Я не уверен, что вызывает это, но console.log показывает URL-адрес так, как должен, поэтому я думаю, что это проблема с функцией checkStatus, так как вкладка загружается при открытии всплывающего окна.