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 相关文章推荐
Javascript实例教程(19) 使用HoTMetal(1)
Dec 23 Javascript
javascript import css实例代码
Jul 18 Javascript
javascript-简单的日历实现及Date对象语法介绍(附图)
May 30 Javascript
JavaScript中获取高度和宽度函数总结
Oct 08 Javascript
Python脚本后台运行的几种方式
Mar 09 Javascript
微信小程序 实战小程序实例
Oct 08 Javascript
jquery获取easyui日期控件的值实现方法
Nov 09 Javascript
三种方式实现瀑布流布局
Feb 10 Javascript
微信小程序基于slider组件动态修改标签透明度的方法示例
Dec 04 Javascript
解决vue项目打包后提示图片文件路径错误的问题
Jul 04 Javascript
mpvue实现左侧导航与右侧内容的联动
Oct 21 Javascript
JavaScript实现轮播图特效
Apr 10 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中的正规表达式(一)
2006/10/09 PHP
攻克CakePHP系列一 连接MySQL数据库
2008/10/22 PHP
array_multisort实现PHP多维数组排序示例讲解
2011/01/04 PHP
基于php无限分类的深入理解
2013/06/02 PHP
php导出word格式数据的代码实例
2013/11/25 PHP
php+mysqli预处理技术实现添加、修改及删除多条数据的方法
2015/01/30 PHP
PHP实现类似题库抽题效果
2018/08/16 PHP
微信企业转账之入口类分装php代码
2018/10/01 PHP
浅谈Javascript面向对象编程
2011/11/15 Javascript
jQuery隔行变色与普通JS写法的对比
2013/04/21 Javascript
jquery仿QQ商城带左右按钮控制焦点图片切换滚动效果
2013/06/27 Javascript
js 阻止子元素响应父元素的onmouseout事件具体实现
2013/12/23 Javascript
究竟什么是Node.js?Node.js有什么好处?
2015/05/29 Javascript
AngularJS入门教程之路由与多视图详解
2016/08/19 Javascript
Javascript将字符串日期格式化为yyyy-mm-dd的方法
2016/10/27 Javascript
遍历json 对象的属性并且动态添加属性的实现
2016/12/02 Javascript
Jquery实现跨域异步上传文件总结
2017/02/03 Javascript
JS实现中文汉字按拼音排序的方法
2017/10/09 Javascript
vue下history模式刷新后404错误解决方法
2018/08/18 Javascript
create-react-app安装出错问题解决方法
2018/09/04 Javascript
Vue实现移动端拖拽交换位置
2020/07/29 Javascript
vue实现动态给id赋值,点击事件获取当前点击的元素的id操作
2020/11/09 Javascript
Python解析网页源代码中的115网盘链接实例
2014/09/30 Python
python中os操作文件及文件路径实例汇总
2015/01/15 Python
Python递归函数定义与用法示例
2017/06/02 Python
Django 浅谈根据配置生成SQL语句的问题
2018/05/29 Python
美国综合购物商城:UnbeatableSale.com
2018/11/28 全球购物
伦敦一卡通:The London Pass
2018/11/30 全球购物
金山毒霸系列的笔试题
2013/04/13 面试题
Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?
2014/07/27 面试题
如何填写个人简历自我评价
2013/12/10 职场文书
人力资源部副职的竞聘演讲稿
2014/01/07 职场文书
教研处工作方案
2014/05/26 职场文书
幼儿园小班工作总结2015
2015/04/25 职场文书
意外事故赔偿协议书
2016/03/22 职场文书
如何利用python实现Simhash算法
2022/06/28 Python