Мне удалось настроить автозапуск, который работает довольно хорошо, используя комбинацию setTimeout и рекурсии.
Я дал функции nextimage()
параметр autoplay
, который является логическим.Затем я добавил следующую строку в конец функции:
if (autoplay) { setTimeout(function() { nextimage(true); }, 4000); }
Наконец, я добавил эту строку в конец скрипта, чтобы запустить цикл автозапуска:
setTimeout(function() { nextimage(true); }, 4000);
Посмотрите демонстрацию, построенную в основном из того, что вы предоставили, с несколькими модификациями для автоматического воспроизведения: http://jsfiddle.net/bVjkP/
Короче говоря, вы передаете логическое значение в функцию nextimage (), чтобы сказать,не начинать автоигру.Затем вы просто вызываете начальный setTimeout, чтобы заставить мяч двигаться.Уловка с этим методом заключается в том, что вам нужно вызывать анонимную функцию через setTimeout, которая вызывает функцию nextimage с autoplay, установленным в true, потому что вы не можете передавать параметры при вызове функции с setTimeout.Это похоже на метод привязки функций к событиям, таким как щелчок или наведение курсора, с использованием jQuery.