JS 实现banner图片轮播效果(鼠标事件)


Posted in Javascript onAugust 04, 2017

一.要实现的效果

1.点击左右可切换图片

2.点击小圆点 可切换图片

二.效果图

JS 实现banner图片轮播效果(鼠标事件)

三.代码

1.css

<style type="text/css">
body,img,span,ul,li{margin: 0;padding: 0;}
#div1{width: 600px;height: 350px;margin: 150px auto;border: 10px solid #eee;position: relative;}
img{width: 600px;height: 350px;}
span{display: inline-block;position: absolute;width: 50px;height: 50px;border-radius: 25px;background:rgba(0,0,0,.3); font-size: 30px;line-height: 50px;text-align: center;cursor: pointer;color: white;}
span:hover{background:rgba(255,255,255,.5);color:black;transform:scale(1.3);}
span#L{left: 10px;top: 150px;}
span#R{right: 10px;top: 150px;}
#div1 #ul{position: absolute;bottom: 10px;left: 250px;width: 125px;height: 20px;}
#div1 #ul li{list-style: none;float: left;height: 20px;width: 20px;border-radius: 10px;background:rgba(255,255,255,.5); margin-right: 5px;cursor: pointer;}
#div1 #ul .active{background:rgba(0,0,0,.5);}
</style>

2.html

<body>
  <div id="div1">
    <img src="" alt="">
    <span id="L"><</span>
    <span id="R">></span>
    <ul id="ul">
     <li></li>
     <li></li>
     <li></li>
     <li></li>
     <li></li>
    </ul>
  </div>
</body>

3.js

<script type="text/javascript">
window.onload=function(){
  var div1=document.getElementById('div1');
  var oImg=div1.getElementsByTagName('img')[0];
  var spanL=document.getElementById('L');
  var spanR=document.getElementById('R');
  var oUl=document.getElementById('ul');
  var oLi=oUl.getElementsByTagName('li');
  var arrImg=['img2/1.jpg','img2/2.jpg','img2/3.jpg','img2/4.jpg','img2/5.jpg'];
  var num=0;
  var oldLi=0;
  function fn(num) {
    oImg.src=arrImg[num];
  }
  fn(0);
  function fnLi(num){
    oLi[oldLi].className='';
    oLi[num].className='active';
    oldLi=num;
  }
  fnLi(0);
  /*点击左右span图片切换*/
  /*点击左右span时li切换*/
  spanL.onclick=function(){
    if (num<1) {
      num=arrImg.length-1;
      fn(num);
      fnLi(num);
    }else{
      num--;
      fnLi(num);
      fn(num);
    }    
  }
  spanR.onclick=function(){
    if (num==arrImg.length-1) {
      num=0;
      fn(num);
      fnLi(num);
    }else{
      num++;
      fnLi(num);
      fn(num);
    }    
  }
  /*点击li实现图片切换*/
  for (var i = 0; i < oLi.length; i++) {
    oLi[i].index=i;
    oLi[i].onclick=function(){
      fn(this.index);
      fnLi(this.index);
    }
  }
}
</script>

总结

以上所述是小编给大家介绍的JS 实现banner图片轮播效果(鼠标事件),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Js+Dhtml:WEB程序员简易开发工具包(预先体验版)
Nov 07 Javascript
javascript伸缩型菜单实现代码
Nov 16 Javascript
Angular4 中常用的指令入门总结
Jun 12 Javascript
iscroll.js滚动加载实例详解
Jul 18 Javascript
使用ajax的post同步执行(实现方法)
Dec 21 Javascript
详解VUE2.X过滤器的使用方法
Jan 11 Javascript
浅谈ajax请求不同页面的微信JSSDK问题
Feb 26 Javascript
jQuery pjax 应用简单示例
Sep 20 jQuery
Makefile/cmake/node-gyp中区分判断不同平台的方法
Dec 18 Javascript
详解Element-UI中上传的文件前端处理
Aug 07 Javascript
vue实现购物车案例
May 30 Javascript
JS前端轻量fabric.js系列之画布初始化
Aug 05 Javascript
jQuery选取所有复选框被选中的值并用Ajax异步提交数据的实例
Aug 04 #jQuery
JavaScript正则表达式校验与递归函数实际应用实例解析
Aug 04 #Javascript
js模拟百度模糊搜索的实例
Aug 04 #Javascript
JavaScript模拟文件拖选框样式v1.0的实例
Aug 04 #Javascript
addeventlistener监听scroll跟touch(实例讲解)
Aug 04 #Javascript
原生js jquery ajax请求以及jsonp的调用方法
Aug 04 #jQuery
Angular2环境搭建具体操作步骤(推荐)
Aug 04 #Javascript
You might like
PHP 实用代码收集
2010/01/22 PHP
PHP彩蛋信息介绍和阻止泄漏的方法(隐藏功能)
2014/08/06 PHP
Yii入门教程之目录结构、入口文件及路由设置
2014/11/25 PHP
php获取flash尺寸详细数据的方法
2016/11/12 PHP
PHP基于cookie实现统计在线人数功能示例
2019/01/16 PHP
javascript Demo模态窗口
2009/12/06 Javascript
锋利的jQuery 第三章章节总结的例子
2010/03/23 Javascript
Jquery截取中文字符串的实现代码
2010/12/22 Javascript
浅谈javascript 函数内部属性
2015/01/21 Javascript
JS实现响应鼠标点击动画渐变弹出层效果代码
2016/03/25 Javascript
JavaScript中英文字符长度统计方法示例【按照中文占2个字符】
2017/01/17 Javascript
从零学习node.js之利用express搭建简易论坛(七)
2017/02/25 Javascript
js实现简单的手风琴效果
2017/02/27 Javascript
基于 D3.js 绘制动态进度条的实例详解
2018/02/26 Javascript
vue+php实现的微博留言功能示例
2019/03/16 Javascript
koa2的中间件功能及应用示例
2020/03/05 Javascript
深入浅析JavaScript中的in关键字和for-in循环
2020/04/20 Javascript
vue各种事件监听实例(小结)
2020/06/24 Javascript
浅析python中的分片与截断序列
2016/08/09 Python
python回调函数中使用多线程的方法
2017/12/25 Python
Python实现的多进程拷贝文件并显示百分比功能示例
2019/04/09 Python
Django的models中on_delete参数详解
2019/07/16 Python
python数值基础知识浅析
2019/11/19 Python
Win10用vscode打开anaconda环境中的python出错问题的解决
2020/05/25 Python
Python json格式化打印实现过程解析
2020/07/21 Python
JustFab加拿大:女鞋、靴子、手袋和服装在线
2018/05/18 全球购物
什么是唯一索引
2015/07/05 面试题
食堂员工工作职责
2013/12/18 职场文书
大学生期末自我鉴定
2014/02/01 职场文书
2014年会策划方案
2014/05/11 职场文书
高效课堂标语
2014/06/26 职场文书
银行会计主管岗位职责
2014/10/01 职场文书
工作检讨书500字
2014/10/19 职场文书
营销计划书
2015/01/17 职场文书
教师“一帮一”结对子活动总结
2015/05/07 职场文书
解决Django transaction进行事务管理踩过的坑
2021/04/24 Python