javascript - 连续向上滑动和淡出 Div
问题描述
我想做这样的东西https://muzzleapp.com/。我希望右侧的移动项目应该向上滑动并从下到上淡出。项目应该是连续移动的,所以在最后一个 div 之后,它将重新开始。我已经尝试过我自己的代码。但坚持从起点开始。它没有从一开始就正确启动。
html
function moveItems(el) {
var x = 1;
var flag = 0;
var elems = $(el).nextAll();
count = elems.length;
elems.each (function (i) {
setTimeout(function() {
if (x>1) {
y = x-1;
$('#slider_'+y).show().delay(2000).slideUp().fadeOut();
}
$('#slider_'+x).show().delay(2000).slideUp();
x++;
if (!--count) {
setTimeout(function() {
moveItems('.panel');
}, 6000)
}
}, i*2000);
})
}
moveItems('.panel');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="panel" id='slider_1'>
<div class="panel-body">
<div class="row">
slider 1
</div>
</div>
</div>
<div class="panel" id='slider_2'>
<div class="panel-body">
<div class="row">
slider 2
</div>
</div>
</div>
<div class="panel" id='slider_3'>
<div class="panel-body">
<div class="row">
slider 3
</div>
</div>
</div>
解决方案
我稍微更新了你的逻辑来处理隐藏和显示。这是更新的预览https://jsfiddle.net/Aravi/hd465gpc/13/
function moveItems(el) {
var elems = document.querySelectorAll(el);
Array.from(elems).forEach((item,index) => {
setTimeout(function() {
index+=1;
$('#slider_'+index).show().delay(2000).slideUp().fadeOut();
if (index == elems.length) {
setTimeout(function() {
for(j=1;j<= elems.length;j++){ $('#slider_'+j).show()}
moveItems('.panel');
}, 6000)
}
}, index*2000);
})
}
moveItems('.panel');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="panel" id='slider_1'>
<div class="panel-body">
<div class="row">
slider 1
</div>
</div>
</div>
<div class="panel" id='slider_2'>
<div class="panel-body">
<div class="row">
slider 2
</div>
</div>
</div>
<div class="panel" id='slider_3'>
<div class="panel-body">
<div class="row">
slider 3
</div>
</div>
</div>
<div class="panel" id='slider_4'>
<div class="panel-body">
<div class="row">
slider 4
</div>
</div>
</div>
<div class="panel" id='slider_5'>
<div class="panel-body">
<div class="row">
slider 5
</div>
</div>
</div>
推荐阅读
- javascript - 物化 css 不适用于静态 css 文件
- sql - Postgres 在限制甚至发生之前限制行
- azure - 带有 Visual Studio 2019 社区的 Windows 10 无法将我的项目发布到 Azure 容器注册表
- c++ - 在ov5640上用V4L2设置ctrl
- sql - 使用匿名块内的变量来更改 SQL SEQUENCE 不起作用
- r - 从 Shiny 中上传的文件生成多个图形/绘图
- php - Google Cloud PostgreSQL 无法从服务器连接
- expectations - 模拟服务器中的 queryStringParameters
- python - 避免无意引用不再使用的 for 循环变量
- python - 在第二个 x 轴上写入(添加)垂直线的标签和值