У меня проблемы с пониманием того, как работает цикл, как я могу сделать цикл for бесконечное количество раз.
Я разрабатываю веб-сайт wordpress и использую автоматический слайдер, в котором первый элемент слайдера получает класс «текущий», и мне нужна функция цикла, которая постоянно проверяет, какой элемент является первым, чтобы я мог отображать определенные тексты для каждого слайда.
Код не так важен, но это JS:
window.onload = function() {
console.info('test');
const frank = document.querySelectorAll('#franck');
const slide21 = document.getElementById('slick-slide21');
console.info(slide21);
if (slide21.classList.contains('slick-current')){
console.info('julien');
}
И html для текущих элементов слайдера выглядит так:
<div class = "premium-carousel-template item-wrapper slick-slide slick-current slick-active" data-slick-index = "5" aria-hidden = "false" style = "width: 374px;" tabindex = "0" role = "tabpanel" id = "slick-slide25" aria-describedby = "slick-slide-control25">
Я проверяю, содержит ли элемент элемент Slide-current, но проверяет только один раз. У меня есть for, но могу ли я проверить каждый слайд, который перемещается каждые 2 секунды?
Цикл до 9999 или что-то в этом роде, но я хочу бесконечный цикл.
Бесконечный цикл:
for(;;) {
/*things to do infinitely*/
}
В цикле while:
while(1) {
/*things to do*/
}
И если вы хотите остановить цикл, вы можете просто добавить
if (/*condition to stop*/) {
break;
}
Это не то, как вы должны работать с документами JS и HTML. Выполните свой код, когда произойдет мутация списка классов. Если это невозможно (например, изменение внесено сторонним скриптом), прикрепите Обозреватель мутаций к элементам, за которыми нужно следить.