Зациклить клик по кнопке через js с условием

Игорь
Игорь
2
0
Содержание:
  1. Комментарии
Необходимо зациклить клик по кнопке через js и если объект пропал на странице то прекратить кликать. Скажем так, заходим на страницу, видим кнопку с классом "button-red ng-star-inserted", отлично начинаем кликать с периодичностью 1.5 секунды и продолжаем до тех пор пока этот класс присутствует на странице. Как только класс "button-red ng-star-inserted" пропал останавливаем скрипт.
Но изначально мы не знаем сколько всего можно раскрыть позиций.
В открытой форме раскрыто 6 карточек, после нажатия кнопки, добавляются еще +6 карточке.

вот модифицированный код который дали, я его поставил но он продолжает кликать даже если объекта нет

var interval = setInterval(function(){
var buttons = document.getElementsByTagName('button');
for (var i = buttons.length - 1; i >= 0; i--) {
    var button = buttons[i];
    if(button.getAttribute('class') == 'button-red ng-star-inserted') {
        button.click();
    }
}
}, 1500);

Комментарии:

  1. Александр Мальцев
    Александр Мальцев
    29.11.2021, 12:48
    Привет! Код корректный, только написан в старом стиле. Можно переписать так (открыть пример):
    setInterval(() => {
      document.querySelectorAll('.button-red.ng-star-inserted').forEach((el) => {
        el.click();
      });
    }, 1500);
    Войдите, пожалуйста, в аккаунт, чтобы оставить комментарий.