请问老师,点击圆点切换和点击箭头切换怎么写?实在没有思路了
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>jQuery实现轮播图</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <!--轮播图--> <div id="container"> <img class="imgs img-active" src="img/1.jpg" width="1000px" height="400px"> <img class="imgs" src="img/2.jpg" width="1000px" height="400px"> <img class="imgs" src="img/3.jpg" width="1000px" height="400px"> <img class="imgs" src="img/4.jpg" width="1000px" height="400px"> <img class="imgs" src="img/5.jpg" width="1000px" height="400px"> <!--箭头导航--> <div class="arrow arrow1"> <img src="img/pre2.png"> </div> <div class="arrow arrow2"> <img src="img/pre.png"> </div> <!--圆点导航--> <div id="dots"> <ul> <li class="active"></li> <li></li> <li></li> <li></li> <li></li> </ul> </div> </div> <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script> <script src="index.js"></script> </script> </body> </html>
*{margin: 0;padding:0; } body{ font-style: 'Microsoft Yahei'; background: '#ffffff'; } #container{ width: 1000px; height: 400px; position: absolute; top:50%; left: 50%; margin-top: -200px; margin-left: -500px; border: 10px solid #bbb; background-color: #ffffff; } .imgs{ float: left; display: none; } .img-active{ display: block; } .arrow{ position: absolute; top:50%; margin-top:-25px; width:30px; height:50px; padding-top:16px; padding-left: 8px; } .arrow:hover{ background-color: grey; } .arrow1{ left: 0; } .arrow2{ right: 0; } li{ display: inline-block; padding:8px; margin:5px; border-radius: 8px; box-shadow:0 0 0 3px rgba(255,255,255,0.9) inset; background: grey; } #dots{ position: absolute; bottom: 10px; right: 10px; } .active{ box-shadow:0 0 0 3px rgba(105,105,105,0.6) inset; background: white; }
$(function(){ var main=$('#container'); var imgs=$('.imgs'); var arrow1=$('.arrow1'); var arrow2=$('.arrow2'); var li=$('li'); var index=0; var timer=null; var len=imgs.length; main.mouseover(function (event){ //鼠标滑过时停止自轮播 if(timer) clearInterval(timer); //划过鼠标清除自动轮播; }) main.mouseout(function(){ //鼠标离开时主动触发轮播 changimg() }) function changimg(event){ //定时切换图片轮播和圆点 timer=setInterval(function(){ index++; if(index>=len){ index=0; } $(imgs.eq(0)).css('display','none') ; $(imgs.eq(index)).css('display','block'); $(imgs.eq(index-1)).css('display','none'); //以下自动切换圆点 li.eq(index-1).removeClass('active'); li.eq(index).toggleClass('active') },2000); } main.mouseout() //自动在main上触发鼠标离开事件 li.click(function(event){ //点击圆点切换图片 }) arrow1.click(function(){ //点击上一张箭头切换图片 }) arrow2.click(function(){ //点击下一张箭头切换图片 }) })
0
收起
正在回答 回答被采纳积分+1
1回答
好帮手慕糖
2018-08-06 10:06:24
你好,1、建议:图片切换(以及原点的切换)可以单独存放一个函数,设置当前的图片显示,其他兄弟图片隐藏即可。
2、小圆点这里,可以在单击是获取当前点击的是第几个,可以使用index()来获取索引哦,之后使用一个变量接收索引,然后调用图片切换的函数。当前的显示,其他的隐藏。
3、箭头事件,右箭头在点击的时候,使其index++,不过到最后一张的时候,在加加的话,就应该变为0,然后调用图片切换函数,显示对用的图片;左箭头在点击的时候,使其index--,到第一张的时候,再次减减的话,要等于最后一张,然后调用图片切换函数,显示对用的图片。
若能解决你的疑问,望采纳。
祝学习愉快~
前端小白入门系列课程
- 参与学习 人
- 提交作业 11218 份
- 解答问题 36713 个
从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星