Я хочу просмотреть каждый элемент определенного класса и показать их один за другим, но между ними будет случайная задержка.
Сложность в том, что я хочу сделать это линейномода, поэтому я не начинаю новый поток для каждого элемента, так как тогда элементы будут отображаться случайным образом (поскольку задержка также случайна).
После того, как это будет сделано, я хотел бы запустить другойчасть кода.
То, что у меня сейчас выглядит, выглядит так, но вы можете видеть, что задержка установлена на фиксированную величину (чтобы не портить порядок элементов)
jQuery('.myclass').each(function(index) {
jQuery(this).delay(1000 * index).fadeIn(0);
}).promise().done(function() {
//run code that has to run when the iteration is finished
});
Есть ли другой способ добиться этого, когда мне может даже не понадобиться использовать обещание и обратный вызов для того, когда должна быть выполнена итерация?
Более линейный подход, где я бы "спал""между итерациями, как это?
jQuery('.myclass').each(function(index) {
jQuery(this).show();
//sleep somehow for 1 or 2 seconds
})
//run code that has to run when the iteration is finished