我在网上到处找Flexslider有一个众所周知的问题,无论是滑块还是转盘,当它到达滑块中的最后一个项目时,它会飞回第一个项目,而不是平稳地保持无限循环我不敢相信没有人能解决这个问题这是我正在使用的flexSlider代码:
$(document).ready(function() {
$(window).load(function() {
$('#carousel-two').flexslider({
animation : "slide",
controlNav : false,
animationLoop : true,
slideshow : true,
itemWidth : 234,
itemMargin : 20,
minItems : 3,
maxItems : 5
//asNavFor : '.flexslider'
});
});
});
不管我做什么都无济于事。当它到达最后一个项目时,它无法通过无限循环保持动画的流畅性。有人有解决方案吗?
感谢
以下是如何在保留itemWidth
属性的同时做到这一点:
jQuery('.flexslider').flexslider({
animation: "slide",
animationLoop: false,
minItems: 4,
maxItems: 6,
itemWidth: 210,
itemMargin:5,
controlNav: false,
end : function(slider){
jQuery('.flexslider .slides li').each(function(){
slider.addSlide('<li>'+jQuery(this).context.innerHTML+'</li>', slider.count);
jQuery('.flexslider .slides').append('<li>'+jQuery(this).context.innerHTML+'</li>');
});
}
});
主要是在end:
属性中使用jQuery函数。我认为animationLoop
也需要设置为false
。这允许无限循环旋转木马。这是我发现这个的地方。
如果删除字符串
itemWidth: 234,
animationLoop将工作
至少有一点是错误的,那就是你有
animationLoop: false,
应该是:
animationLoop: true,