请帮我纠正我的脚本:http://jsfiddle.net/b36cM/
if(direction == -1){
wrapperElements.children(':last').after($('#carousel > ul').children().slice(0, options.rotateBy).clone());
shiftAction();
wrapperElements.children().slice(0, options.rotateBy).remove();
}
else{
// wrapperElements.children(':first').after($('#carousel > ul').children().slice(carouselLength - options.rotateBy, carouselLength).clone());
// shiftAction();
// wrapperElements.children().slice(carouselLength - options.rotateBy, carouselLength).remove();
}
}
function shiftAction(){
console.log(offset);
wrapperElements.animate({
'left': offset
}, options.speed, function(){
running = false;
});
}
}
点击#prev
时,动画会向左移动两个元素。我想顺利滚动一个项目。
答案 0 :(得分:0)
请注意,shiftAction()和remove()运行异步,因此动画未在元素移除时完成,并且使动画跳转到第一个元素上,您可以使用
进行检查setTimeout(function() {
wrapperElements.children().slice(0, options.rotateBy).remove();
},5000);
但它没有解决动画的漏洞问题