У меня есть сайт, на котором я размещаю слайд-шоу. Когда я открываю страницу, моя функция js выполняется без тайм-аута, а затем ждет 10 секунд. Как я могу заставить этот скрипт работать правильно?
function slider(){
slider.navigate("next");
setTimeout(slider,10000);
}
slider();



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Ваш код работает не так, как вы ожидаете, потому что вы выполняете slider.navigate("next") до истечения времени ожидания, а не внутри него. Кроме того, на первый взгляд кажется, что вы пытаетесь создать тайм-аут рекурсивно, поэтому лучшей альтернативой является использование setInterval.
function slider() {
setInterval(function () {
slider.navigate("next");
}, 10000);
}
slider();
Я рад, что смог вам помочь @MaciekMesjasz ?
Но эта функция выполняется только один раз: / Я хотел бесконечный цикл
Что мне делать?
В этом случае вы должны использовать setInterval вместо setTimeout @MaciekMesjasz.
Нет проблем @MaciekMesjasz.