【发布时间】:2022-03-03 16:22:03
【问题描述】:
连续的 JavaScript 滚动器
我有以下脚本正在处理下一次和上一次点击。大约有 1 到 3 个 div,我为此添加了此 JavaScript,以便在下一个和上一个按钮操作时从左到右流动,反之亦然。
我想让它连续滚动。在第三个 div 滚动条之后应该再次导航到第一个 div。它不应该朝相反的方向发展。流动应该一次又一次地连续。
请就实现此目的的解决方案提出建议。
<div id="mainContainer">
<!--mainContainer Div Start-->
<div class="arrowRight"><img src="images/arrow_left.png" width="36" height="39"></div>
<div class="arrowLeft"><img src="images/arrow_right_disable.png" width="36" height="39"> </div>
<div class="slider">
<div class="slides"> <img src="images/1.jpg" width="250" height="250"></div>
<div class="slides"> <img src="images/2.jpg" width="250" height="250"></div>
<div class="slides"><img src="images/3.jpg" width="250" height="250"> </div>
</div>
<!--mainContainer Div End-->
</div>
js
window.onload=init;
function init(){
var arrowLeft=document.querySelector('.arrowLeft');
var arrowRight=document.querySelector('.arrowRight');
arrowRight.addEventListener('click',slideRight,false);
arrowLeft.addEventListener('click',slideLeft,false);
var flag=1;
function slideRight(){
if(flag<3){
flag++;
arrowLeft_div.innerHTML="<img src='images/arrow_right.png' width='36' height='39'>";
var slider=document.querySelector('.slider');
slider.style.webkitTransform+='translate(-1024px, 0px)';
}
if(flag==3){
arrowRight_div.innerHTML="<img src='images/arrow_left_disable.png' width='36'
height='39'>";
}
}
function slideLeft(){
if(flag>1){
flag--;
arrowRight_div.innerHTML="<img src='images/arrow_left.png' width='36' height='39'>";
var slider=document.querySelector('.slider');
slider.style.webkitTransform+='translate(1024px, 0px)';
}
if(flag==1){
arrowLeft_div.innerHTML="<img src='images/arrow_right_disable.png' width='36'
height='39'>";
}
}
}
【问题讨论】:
-
你的问题到底是什么?
-
我想创建连续滑块。假设,有三个div,一个接一个。下一次击中时,将需要 2 秒 div,然后再次击中将需要 3 格。在此之后单击下一个按钮,我应该能够再次看到第一个 div。循环三个div。像 1,2 然后 3 然后 1, 2 然后 3 重复过程。上面的代码工作正常,直到我到达第三个 div,之后我禁用了下一次点击。但在这里我想保持下一个按钮处于活动状态,并希望在下次单击时再次显示第一个 div。它应该看起来是连续的过程。
-
我也刚刚添加了 html 代码,只是为了让每件事都清楚。希望这会有所帮助。
-
请注意,代码是专门为 Ipad 开发的。
-
@user - 动画的持续时间有多长?
标签: javascript css dom-events mobile-webkit