Я хочу перебрать каждый элемент с определенным классом, затем добавить интервал и время ожидания для каждого элемента. Время ожидания изменит свой класс через n секунд, и интервал будет повторяться x секунд.
Однако я также хочу, чтобы пользователь останавливал интервалы индивидуально, щелкая элемент по своему выбору, а не сбрасывая все интервалы (или последний тайм-аут) сразу. Есть ли способ установить отдельные экземпляры Interval для каждой итерации в цикле? И если да, то как вы потом будете обращаться к этим экземплярам индивидуально позже?
Отмечено, где я застреваю в логике:
var myInterval;
$('.my-elements').each(function(i){
var thisElement = $(this)
//add class every 2000 milliseconds
//At a loss on how to make dynamic/relative to interation
setInterval(function(){
$(thisElement).addClass("active");
//remove class after 200 milliseconds
var myInterval = setTimeout(function(){ $(thisElement).removeClass("active") },200)
}, 2000)
$(thisElement).click(function(){
//AT A LOSS
//stop interval for this element;
})
})