body,img,span,ul,li{margin: 0;padding: 0;}#div1{width: 600px;height: 350px;margin: 150px auto;border: 10px solid #eee;position: re" />
当前位置:首页 > 日记 > 正文

JS 实现banner轮播效果 | 鼠标事件

JS 实现banner轮播效果 | 鼠标事件

一.要实现的效果

1.点击左右可切换图片

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

二.效果图

三.代码

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.webp','img2/2.webp','img2/3.webp','img2/4.webp','img2/5.webp'];  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图片轮播效果(鼠标事件),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

相关文章

配置IIS服务器,支持sis、SISX、3GP

配置IIS服务器,支持sis、SISX、3GP

服务器,支持,配置,文件下载,电脑软件,配置IIS服务器,支持sis、SISX、3GP、ADP、AMR、JAD、JAR、MMF、MFM、PMD、UMD等文件下载 问:如何开通WAP网站呢,让更多朋友通过手机来浏览的我网站呢?答:浏览WAP网站与WEB网站都是需要服务器端和终端支持的,W…

HTTP 错误 500.19 - Internal Serv

HTTP 错误 500.19 - Internal Serv

错误,解决办法,详解,电脑软件,HTTP,HTTP 错误 500.19 - Internal Server Error最近做项目出现了这个错误,经过同事之间的讨论未能解决,之后百度一下找到了解决方法,这里就说下希望大家遇到这种错误可以顺利解决。无法访问请求的页面,因为该页的…

服务器上映射出20M的磁盘且无法分

服务器上映射出20M的磁盘且无法分

磁盘,格式化,服务器,射出,电脑软件,问题描述:用户反映SureFibre 640存储在服务器上自动映射出20M的磁盘,且无法分区格式化、更加无法使用。原因分析:目前在销的SureFibre系列存储,都具备带内管理的功能,如果启用了带内管理而没有安装带内管理代…

正则表达式d元字符 | 相对于数字0-

正则表达式d元字符 | 相对于数字0-

元字符,数字,正则表达式,相对于,电脑软件,正则表达式\d元字符:\d元字符可以匹配数字字符,等价于"[0-9]"。语法结构:构造函数方式:new RegExp(\\d)对象直接量方式:/\d/浏览器支持:IE浏览器支持此元字符。火狐浏览器支持此元字符。谷歌…

详解JavaScript数组过滤相同元素的

详解JavaScript数组过滤相同元素的

元素,数组,过滤,种方法,详解,方法一:比较内层循环变量的值.var arr = [1, 2, 3, 1, 3, 4, 5, 5];var resultArr = [];for (i = 0; i < arr.length; i++) { for (j = 0; j < resultArr.length; j++) { if (resultArr[j] == arr[i]) { …

Bootstrap Multiselect插件使用步

Bootstrap Multiselect插件使用步

参数,插件使用,步骤,配置详解,常见, Multiselect是基于jQuery插件的,它可以以下拉列表的形式为用户提供选择内容,能进行单选或者多选。它应用的主要步骤如下:一,引入需要的相关js和css文件既然是Bootstrap插件,又是基于jQuery的,很明显主要就导入…

jQuery动态生成不规则表格 | 前后

jQuery动态生成不规则表格 | 前后

动态生成,不规则,表格,电脑软件,jQuery,一、需求:有这么一张表前四个属性当作联合主键需要把该表所有的行在前端以表格形式显示出来,要求activityId相同时合并成一行,activityCode相同时,合并一行,activityVersion相同时也合并一行。类似这种:二…

React-router v4 路由配置方法小结

React-router v4 路由配置方法小结

方法,路由配置,电脑软件,React,router,本文主要介绍了React-router v4 路由配置方法小结,分享给大家,也给自己留个笔记一. Switch 、Router 、Route三者的区别1、RouteRoute 是建立location 和 ui的最直接联系2、Routerreact-router v4 中,Rou…

详解Vue + Vuex 如何使用 vm.$next

详解Vue + Vuex 如何使用 vm.$next

如何使用,详解,电脑软件,Vue,Vuex,vm.$nextTick简单说,因为DOM至少会在当前tick里面的代码全部执行完毕再更新。所以不可能做到在修改数据后并且DOM更新后再执行,要保证在DOM更新以后再执行某一块代码,就必须把这块代码放到下一次事件循环里面…

使用canvas及js简单生成验证码方法

使用canvas及js简单生成验证码方法

方法,验证码,简单,电脑软件,canvas,在很多时候都需要用到验证码,前端验证码需要知道Html5中的canvas知识点。验证码生成步骤是:1.生成一张画布canvas2.生成随机数验证码 3.在画布中生成干扰线 4.把验证码文本填充到画布中 5.点击画布更换验证…

正则表达式字符类加深理解

正则表达式字符类加深理解

字符,正则表达式,电脑软件,正则表达式字符类加深理解:一.基本概念:字符类相对来说是比较简单的,但是也有可能由于理解不够深入或者大意造成一些误区,下面再来做一下介绍。字符类[]能够匹配包含在中括号中的一系列字符中的任意一个,但是匹配的…

Excel表格制作中如何隐藏函数

Excel表格制作中如何隐藏函数

函数,表格,电脑软件,Excel,  在一般的Excel使用中的公式或者函数,是完全能够让浏览者看到的。那么如果有办法将Excel中的公式或函数隐藏起来,只显示运算结果,这样会比较好。以下是小编为您带来的关于Excel隐藏函数,希望对您有所帮助。Excel隐…