快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

JS如何实现banner图的常用功能

这篇文章主要介绍JS如何实现banner图的常用功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

专业领域包括成都网站制作、网站建设、商城网站建设、微信营销、系统平台开发, 与其他网站设计及系统开发公司不同,创新互联的整合解决方案结合了帮做网络品牌建设经验和互联网整合营销的理念,并将策略和执行紧密结合,为客户提供全网互联网整合方案。

js的作用是什么

1、能够嵌入动态文本于HTML页面。2、对浏览器事件做出响应。3、读写HTML元素。4、在数据被提交到服务器之前验证数据。5、检测访客的浏览器信息。6、控制cookies,包括创建和修改等。7、基于Node.js技术进行服务器端编程。

虽然,用jQuery实现banner图的各种效果十分简单快捷,但是我今天用css+js代码实现了几个banner图的常用功能,效果还不错。

此次,主要想实现以下功能:

1. banner图循环不间断切换

2. 通过自制按钮实现指定性banner图的切换

3. 通过方向按钮实现banner图左/右定向依次切换

4. 当banner图存在onmouseover事件时,停止banner切换,当存在onmouseout时继续切换



 
  
  
  
   #banner{
    width: 716.8px;
    height: 537.6px;
    background-color: aquamarine;
    margin: 100px auto;
    position: relative;
    font-size: 0px;  /*清除img图片间的回车符产生的间隔*/
    overflow: hidden;
   }
   #banner #bannerImg{
    width: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    white-space: nowrap; /*使这个图片能一行显示*/
    transition:all 1s linear;
   }
   #banner #bannerImg .img{
    width: 100%;
   }
   #banner #bannerButton{
    font-size: 16px;
    color: white;
    position: absolute;
    bottom: 10px;
    left: 20px;
   }
   #banner #bannerButton .Button{
    border-radius: 9px;
    border: none;
    outline: none;
    cursor: pointer;
    background-color: #7FFFD4;
   }
   #banner #bannerButtonAside .div1{
    position: absolute;
    right: 10px;
    top: 50%;
    margin-top: -32px;
    cursor: pointer;
   }
   
   #banner #bannerButtonAside .div2{
    position: absolute;
    left: 10px;
    top: 50%;
    margin-top: -32px;
    cursor: pointer;
   }
  
 
 
  
  
   
   
   
    
    
    
    
    
    
     
   
                1     2     3     4     5     6    
                           
                               var bannerImg=document.getElementById("bannerImg"); /*取出img容器的节点*/   var Button=document.getElementsByClassName("Button"); /*取出所有的button按钮*/   var num=0;  /*定义全局变量num,控制banner的切换次序*/   var aaa=0;  /*定义一个全局变量,用来取定时器函数,并在没有鼠标事件的时候清除定时器*/       /*通过定时器实现banner图的每3000毫秒切换一次的效果的changeStart()函数*/   function changeStart(){     aaa=setInterval(function(){     if (num<=6) {      bannerImg.style.transition="all 1s linear";      bannerImg.style.left=(-716.8)*(num)+"px";      num++;     }else{      bannerImg.style.transition="all 0s linear";  /*消除num=0时,bannerImg移动的过渡效果*/      num=0;      bannerImg.style.left=(-716.8)*(num)+"px";           }     console.log("哈哈哈继续");    },3000)   }   changeStart();      /*以下是当鼠标悬浮在banner图上时,图片停止自动切换的changeStop()函数*/   function changeStop(){    clearInterval(aaa);     console.log("停止他");   }      /*以下是点击按钮实现对应banner图切换的change()函数*/   function buttonChange(Num){    num=Num+1;    bannerImg.style.transition="all 0s linear";    bannerImg.style.left=(-716.8)*(Num)+"px";   }      /*以下是点击左右两个按钮实现banner图切换的buttonChange()函数*/   function asideChange(x){ /*通过传递形参x,判断往左/往右切换banner图*/    if (num!=6&&x==1) {     num++;    }else if(num==6&&x==1){     num=0;    }else if(num!=0&&x==0){     num--;    }    else if(num==0&&x==0){     num=5;    }    bannerImg.style.transition="all 0s linear";    bannerImg.style.left=(-716.8)*(num)+"px";   }  

但是经过博主的测试,发现程序存在一定的瑕疵,第一张图片的保留时间比其他图片长,而且每次重新开启定时器均存在这个问题。暂时博主还没有比较简单

省事的方法改良他,所以仅供参考思路,以后要用,当然还是jQuery省事啦!

以上是“JS如何实现banner图的常用功能”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


本文题目:JS如何实现banner图的常用功能
本文地址:http://6mz.cn/article/ppssis.html