我正在制作一个滑块,我的缩略图遇到了一些问题,它们的动画效果比主要图像的淡入淡出得快(在几个拇指动画之后,它们与主幻灯片的动画相同...他们需要在同一时刻)他们有相同的速度,所以我不明白为什么会产生这个错误......
jQuery(document).ready(function(){
speed = 8000;
max_slide = jQuery(".slides_control div.fps-slide").size();
val_x = 0;
run = setInterval('rotate()', speed);
jQuery("#slider").hover(
function () { clearInterval(run); },
function () { run = setInterval('rotate()', speed); }
);
});
function rotate() {
thumbFirst = jQuery(".fps-pagination li:first-child");
thumbContainer = jQuery(".fps-pagination");
animationSpeed = 800;
if (val_x > max_slide) { val_x = 0 }
thumbFirst.clone().appendTo(jQuery(".fps-pagination"));
jQuery(".slides_control div.fps-slide:eq("+val_x+")").animate({"opacity":"0"}, { queue: false, duration: animationSpeed });
val_x++;
jQuery(".slides_control div.fps-slide:eq("+val_x+")").animate({"opacity":"1"}, { queue: false, duration: animationSpeed });
thumbContainer.animate(
{"top":"-137px"},
{queue:false, duration: animationSpeed,
complete: function() {
thumbFirst.remove();
thumbContainer.css({"top": "0px"})
}
});
}
jsFiddle:http://jsfiddle.net/AY3y2/1/(在这个环境中效果不佳) 实时代码:http://webserver.lewebsimple.ca/~tempcode/
答案 0 :(得分:1)
你能做一个简短的例子???
修改
使用此旋转功能,如果val_x>您的问题就出现了maxSlide 它必须是> =并且在val_X ++之后,但是尝试它
function rotate() {
thumbFirst = jQuery(".fps-pagination li:first-child");
thumbContainer = jQuery(".fps-pagination");
animationSpeed = 800;
thumbFirst.clone().appendTo(jQuery(".fps-pagination"));
jQuery(".slides_control div.fps-slide:eq(" + val_x + ")").animate({ "opacity": "0" }, { queue: false, duration: animationSpeed });
val_x++;
if (val_x >= max_slide) { val_x = 0 }
jQuery(".slides_control div.fps-slide:eq(" + val_x + ")").animate({ "opacity": "1" }, { queue: false, duration: animationSpeed });
console.log(jQuery(".slides_control div.fps-slide:eq(" + val_x + ")").length + "valor x " + val_x);
thumbContainer.animate({ "top": "-137px" }, { queue: false, duration: animationSpeed, complete: function () { thumbFirst.remove(); thumbContainer.css({ "top": "0px" }) } });
}