我正在使用 jquery 在 div 集内滑动图像以隐藏溢出,然后删除第一个图像并将其附加到末尾,这样我在列表中总是有相同数量的图像,并且它们每次都向左滑动函数触发:
function xxx(){
var first = $('.ximg:first');
$('.ximg').animate({ left: '-=200'}, 2000, function(){ $('.ximg').css({left: '0'}); first.insertAfter($('.ximg:last'));});
}
setInterval(function(){ xxx () }, 8000);
<div style="position:relative; overflow:hidden; width: 400px; height: 150px;">
<div class="ximg" style="position: relative; width: 200px; min-height:150px; background:red"></div>
<div class="ximg" style="position: relative; width: 200px; min-height:150px; background:orange"></div>
<div class="ximg" style="position: relative; width: 200px; min-height:150px; background:green"></div>
<div class="ximg" style="position: relative; width: 200px; min-height:150px; background:yelow"></div>
</div>
但我最终只在容器中添加了 1 个图像,第二个图像仅在函数触发时添加。我知道有读过的插件可以做这种事情,但我希望它简单,并且更喜欢尝试编写自己的插件,即使我对 jquery 比较陌生!
容器是 400 宽,因为每个 div 是 200 宽,所以应该总是有 2 个 div 在视图中,即使在动画期间它会显示第一个和第三个 div 的百分比。