Скрипт должен запускаться при совпадении с URL - PullRequest
0 голосов
/ 02 октября 2019

Целый день я пытался заставить мой скрипт работать на определенном веб-сайте. По сути, я хочу, чтобы этот скрипт запускался только на определенных доменах.

Вот код:

document.addEventListener("DOMContentLoaded", function(event) {

    // URL variables
    let fullURL = window.location.host;
    let fullURL2 = window.location.host + window.location.pathname;

    var timer = setInterval(deletor, 1);

        alert(fullURL2);
        alert(fullURL);

        if (fullURL === "net.adjara.com") {

                function deletor() {
                timer;

                    var slider = document.querySelector("#slider-con");
                    var bannerTop = document.querySelector("#MainContent > div:nth-child(2)")
                    var bannerMiddle = document.querySelector("#MainContent > iframe");
                    var bannerRandom = document.querySelector("#MainContent > div:nth-child(3)");

                        if (slider) {
                            slider.parentNode.removeChild(slider);
                        }

                        if (bannerTop) {
                            bannerTop.parentNode.removeChild(bannerTop);
                        }

                        if (bannerMiddle) {
                            bannerMiddle.parentNode.removeChild(bannerMiddle);
                        }

                        if (bannerRandom) {
                            bannerRandom.parentNode.removeChild(bannerRandom);
                        }

                        console.log("worked!");
                };

        } else {
            console.log("false!");
            return false;
        }

});

Я получаю «ложную» консоль, когда я захожу на другой сайт, кроме упомянутого, носкрипт не выполняется, когда домен совпадает. Я даже добавил предупреждение, чтобы увидеть, каково значение переменной, и скопировал его.

1 Ответ

1 голос
/ 02 октября 2019

Когда функция определена внутри if, переменная будет поднята, но у нее не будет значения

console.log(test)
if (new Date()){
  function test() {}
}

, поэтому вы устанавливаете интервал с неопределенным значением.

Переместить интервал после определения функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...