zoukankan      html  css  js  c++  java
  • 原生JS实现轮播图的效果

    原生JS实现轮播图的效果:

      只要缕清了全局变量index的作用,这个轮播图也就比较容易实现了;另外,为了实现轮这个效果,有几处clearInterval()必须写上。废话不多说,直接上代码,修复了几个比较诡异的bug:

    <!DOCTYPE html>
       <html>
           <head>
               <meta charset="UTF-8">
               <title></title>
               <style type="text/css">
                   body,ul,p{margin:0;padding:0;}
                   #boxs{position: relative;width:100%;height:460px;}
                   #box{width:100%;height:460px;}
                  ul{position:relative;width:100%;height:460px;}
                  li{width:100%;height:460px;position:absolute;}
                  img{width:100%;height:100%}
                  #circle{position: absolute;bottom:0;left:50%;transform: translate(-50%,0);}
                  #circle span{display:inline-block;height:20px;width:20px;background:white;vertical-align: top;border:1px solid yellow;border-radius:10px;/*float:left;*/}
                  .on{background:red !important;}
                  #left{position: absolute;background:red;height:80px;width:50px;line-height:80px;text-align: center;color:white;left:0;top:40%;}
                  #right{position: absolute;background:red;height:80px;width:50px;line-height:80px;text-align: center;color:white;right:0;top:40%;}
              </style>
              <script type="text/javascript">
                  window.onload=function(){
                      var circle_span=document.getElementById("circle").children;
                      var list=document.getElementById("ul1").children;
                      var box1=document.getElementById("boxs");
                      var btn1=document.getElementById("left");
                      var btn2=document.getElementById("right");
                      var timer=null;
                      var index=0;
                      play();
                      box1.onmouseover=function(){
                          clearInterval(timer);
                      }
                      box1.onmouseout=function(){
                          clearInterval(timer);
                          play();
                      }
                      btn1.onclick=function(){
                          index--;
                          if(index<0){
                              index=5;
                          }            
                          change(index);
                      }
                      btn2.onclick=function(){
                          index++;
                          if(index>5){
                              index=0;
                          }
                          change(index);
                      }
                      for(var i=0;i<circle_span.length;i++){
                          circle_span[i].index=i;
                          circle_span[i].onmouseover=function(){
                              clearInterval(timer);
                              change(this.index);
                              index=this.index;
                          }
                      }
                      function play(){
                          timer=setInterval(function(){
                              index++;
                              if(index>5){
                                  index=0;
                              }
                          change(index);
                          },1000);
                      }
                      function change(index){
                          for(var i=0;i<circle_span.length;i++){
                              circle_span[i].setAttribute("class","");
                              list[i].style.display="none";
                          }
                          circle_span[index].className="on";
                          list[index].style.display="block";
                      }
                  }            
              </script>
          </head>
          <body>
              <div id="boxs">
                  <div id="box">
                      <ul id="ul1">
                         <li><img src="img/11.jpg"/></li>
                        <li><img src="img/22.jpg"/></li>
                        <li><img src="img/33.jpg"/></li>
                        <li><img src="img/44.jpg"/></li>
                        <li><img src="img/55.jpg"/></li>
                        <li><img src="img/66.jpg"/></li>
                      </ul>
                  </div>
                  <div id="circle">
                      <span class="on"></span>
                      <span></span>
                      <span></span>
                      <span></span>
                      <span></span>
                      <span></span>
                  </div>
                  <div id="left">向左</div>
                  <div id="right">向右</div>
             </div>
         </body>
     </html>
  • 相关阅读:
    idea无法clean报错Error running 'lizi-user-api [clean]': No valid Maven installation found. Either set the home directory in the configuration dialog or set the M2_HOME environment variable on your system.
    maven项目无法下载依赖jar包
    JPA封装baseDao
    forward和redirect的区别
    java的三个体系
    Java基本修饰符
    SpringMVC 中,当前台传入多个参数时,可将参数封装成一个bean类
    注解@RequestParam——取请求参数
    冒泡排序
    为什么要使用线程池?
  • 原文地址:https://www.cnblogs.com/mycognos/p/9180298.html
Copyright © 2011-2022 走看看