Для переменной fade_time установлено значение 3000, но анимация намного быстрее. Я также пробовал переходить в 3000 вместо пения переменной, но это не помогло. Вот мой код, любые идеи приветствуются.
$images.filter(':eq(' + current_pic_idx + ')').css({
zIndex: 50
});
$images.filter(':eq(' + nextPic + ')').css({
zIndex: 100,
opacity: 0
}).animate({
opacity: 100
}, {
duration: fade_time,
complete: function () {
$images.filter(':eq(' + current_pic_idx + ')').css({
zIndex: 0
});
current_pic_idx = current_pic_idx + 1;
if (current_pic_idx == $images.size()) {
current_pic_idx = 0;
}
window.setTimeout(showNextImage, timer_delay);
}
});
Попробуйте использовать следующий синтаксис:
.animate({
opacity: 100
}, fade_time, function () {
$images.filter(':eq(' + current_pic_idx + ')').css({
zIndex: 0
});
current_pic_idx = current_pic_idx + 1;
if (current_pic_idx == $images.size()) {
current_pic_idx = 0;
}
window.setTimeout(showNextImage, timer_delay);
});
fade_time
который, вероятно, не в числе, а в строке, не распознается jQuery как допустимое значение и имеет значение по умолчанию (400);