我正在写一个应该无限滚动的基本轮播/滑块。基本上,我试图将容器移到幻灯片的整个宽度上,将第一个幻灯片移到末尾,然后再将容器移回去。
由于某种原因.first()移动第二个元素而不是第一个:
$('.half-slider .next').click(function(){
var slideW = $(this).parent().parent().find('.slide').first().outerWidth();
$(this).parent().parent().find('.slides').animate({'margin-left': -slideW},function(){
var firstSlide = $(this).find('.slide').first();
var lastSlide = $(this).find('.slide').last();
firstSlide.after(lastSlide);
});
});
我创建了一个jsfiddle:http://jsfiddle.net/BLAaF/2/
*只需在小提琴中选择“下一个”。在该示例中,“ prev”未处于活动状态。
最佳答案
firstSlide.after(lastSlide);
这会将
lastSlide
放在firstSlide
之后。基于您“将第一张幻灯片放到最后”的说法,我认为您的意思是:firstSlide.insertAfter(lastSlide);
将第一张幻灯片放在最后一张幻灯片之后。