Сообщение от Andrey_rtv
|
Консоль IE ругался на неправильный аргумент
setInterval(this.animate, 5000);
, хотя после подстановки
setInterval(function() {class_this .animate()}, 5000)
- ошибка пропадает, но анимация не появляется.
|
а Вы догадались
правильно.
в функции, которая исполнится через 5 сек, this будет равен window, а this.animate вернёт undefined, и это вызовет ошибку.
тем более, зачем нужен интервал в таком виде, как он есть? функция будет исполняться каждые 5 сек бесконечное число раз.
... анимация не появляется? может, 5 сек слишком много?
попробуйте так
function Start_animation() {
var change = false;
var index_img = 0;
var class_this = this;
var interval_id; //<-----
this.animate = function() {
// .....
if (!interval_id) {
interval_id = setInterval(function () {
class_this.animate();
}, 16);
}
// ....