【问题标题】:Continuous JavaScript Scroller连续 JavaScript 滚动器
【发布时间】: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


【解决方案1】:

这样的?

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){
    arrowLeft_div.innerHTML="<img src='images/arrow_right.png' width='36' height='39'>";    
    var slider=document.querySelector('.slider');
    slider.style.webkitTransform+='translate(2048px, 0px)'; 
    flag = 1;
}

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-06-26
  • 2021-05-14
  • 1970-01-01
  • 2023-03-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多