Задать вопрос

Как проверить наличие объекта на сайте js TamperMonkey?

(function() {
    'use strict';
    let timerId;
    let timer = () => {
        const text = document.querySelector('.Tag-module_content__uLsTI').textContent;


    if(text.slice(0, -1)<(-53)){

        buy("ActionAnimatedSmallButtonZone_container__Gxja8 ActionAnimatedSmallButtonZone_desktop___1slH ActionAnimatedSmallButtonZone_type-cart__1GcmO");

        setTimeout(buy1,100);

        setTimeout(buy2,100);

        console.log("Сработало");

        setTimeout(clsmenu,30000);
        setTimeout(rel,35000);

        timerId = setTimeout(timer, 45000);



    }
    else if (!text){
        rel();
        alert(text);
        timerId = setTimeout(timer, 1500);
    }
    else{
        rel();
        timerId = setTimeout(timer, 1500);
    }
    }
    timerId = setTimeout(timer, 300);
})();


У меня такая проблема: скрипт работает ровно до того момента пока интернет чуть чуть зависает и объект с таким классом пропадет на некоторое время
const text = document.querySelector('.Tag-module_content__uLsTI').textContent;
Я не знаю как проверить это и перепробовал кучу способов.
38%
6772a723a45c8732268577.png
нет класса
6772a73d368fd442236200.png
  • Вопрос задан
  • 60 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 1
@Wana1
Так попробуй
(function() { 
    'use strict'; 
    let timerId; 

    let timer = () => { 
        const element = document.querySelector('.Tag-module_content__uLsTI');

        // Проверяем, найден ли элемент
        if (element) { 
            const text = element.textContent;
            if (text.slice(0, -1) < (-53)) { 
                buy("ActionAnimatedSmallButtonZone_container__Gxja8 ActionAnimatedSmallButtonZone_desktop___1slH ActionAnimatedSmallButtonZone_type-cart__1GcmO"); 
                setTimeout(buy1, 100); 
                setTimeout(buy2, 100); 
                console.log("Сработало"); 
                setTimeout(clsmenu, 30000); 
                setTimeout(rel, 35000); 
                timerId = setTimeout(timer, 45000); 
            } else { 
                rel(); 
                alert(text); 
                timerId = setTimeout(timer, 1500); 
            }
        } else { 
            // Если элемент не найден, выполняем действия
            rel(); 
            console.log("Элемент не найден, повторная проверка через 1500 мс");
            timerId = setTimeout(timer, 1500); 
        }
    } 

    timerId = setTimeout(timer, 300); 
})();
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@HealSpirit
если элемент появляется или исчезает можно попробовать использовать MutationObserver.
напиши адрес страницы, на который ты запускаешь скрипт, может без таймеров можно обойтись
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы