分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 前端开发

JQuery 图片轮播

发布时间:2023-09-06 02:34责任编辑:白小东关键词:暂无标签

准备工作:

  1、准备几张大小相同的图片

完成功能:

  1、自动轮播

  2、手动轮播

  3、点击二侧按钮前后切换图片

效果图:

完整代码:

 ?1 <!DOCTYPE html> ?2 <html lang="en"> ?3 <head> ?4 ????<meta charset="UTF-8"> ?5 ????<title>Title</title> ?6 ????<style> ?7 ????????.outer { ?8 ????????????width: 590px; ?9 ????????????height: 470px; 10 ????????????margin: 80px auto; 11 ????????????position: relative; 12 ????????} 13 ?14 ????????.img li { 15 ????????????position: absolute; 16 ????????????list-style: none; 17 ????????????top: 0px; 18 ????????????left: 0px; 19 ????????} 20 ?21 ????????.num { 22 ????????????position: absolute; 23 ????????????bottom: 15px; 24 ????????????left: 120px; 25 ????????????list-style: none; 26 ????????} 27 ?28 ????????.num li { 29 ????????????display: inline-block; 30 ????????????width: 18px; 31 ????????????height: 18px; 32 ????????????background-color: white; 33 ????????????border-radius: 50%; 34 ????????????text-align: center; 35 ????????????line-height: 18px; 36 ????????????margin-left: 10px; 37 ????????} 38 ?39 ????????.btn { 40 ????????????position: absolute; 41 ????????????top: 50%; 42 ????????????width: 30px; 43 ????????????height: 60px; 44 ????????????background-color: lightgray; 45 ????????????color: white; 46 ????????????text-align: center; 47 ????????????line-height: 60px; 48 ????????????font-size: 30px; 49 ????????????opacity: 0.6; 50 ????????????margin-top: -30px; 51 ????????????display: none; 52 ????????} 53 ?54 ????????.left_btn { 55 ????????????left: 0px; 56 ????????} 57 ?58 ????????.right_btn { 59 ????????????right: 0px; 60 ????????} 61 ?62 ????????.outer:hover .btn { 63 ????????????display: block; 64 ????????} 65 ?66 ????????.num .active { 67 ????????????background-color: red; 68 ????????} 69 ????</style> 70 </head> 71 <body> 72 <div class="outer"> 73 ????<ul class="img"> 74 ????????<li><a href="#"><img src="images/0.jpg" alt=""></a></li> 75 ????????<li><a href="#"><img src="images/1.jpg" alt=""></a></li> 76 ????????<li><a href="#"><img src="images/2.jpg" alt=""></a></li> 77 ????????<li><a href="#"><img src="images/3.jpg" alt=""></a></li> 78 ????????<li><a href="#"><img src="images/4.jpg" alt=""></a></li> 79 ????????<li><a href="#"><img src="images/5.jpg" alt=""></a></li> 80 ????????<li><a href="#"><img src="images/6.jpg" alt=""></a></li> 81 ????????<li><a href="#"><img src="images/7.jpg" alt=""></a></li> 82 ????</ul> 83 ????<ul class="num"> 84 ????????<!--<li class="active"></li>--> 85 ????????<!--<li></li>--> 86 ????????<!--<li></li>--> 87 ????????<!--<li></li>--> 88 ????????<!--<li></li>--> 89 ????????<!--<li></li>--> 90 ????????<!--<li></li>--> 91 ????????<!--<li></li>--> 92 ????</ul> 93 ????<div class="left_btn btn"> <</div> 94 ????<div class="right_btn btn"> ></div> 95 </div> 96 </body> 97 <script src="jquery-3.3.1.min.js"></script> 98 <script> 99 ????var i = 0;100 ????// 通过JQuery获取img标签下li的个数,然后自动创建num标签下的按钮标签li101 ????var $img_num = $(".img li").length;102 ????for (var j = 0; j < $img_num; j++) {103 ????????$(".num").append("<li>");104 ????}105 ????$(".num li").eq(0).addClass("active");106 107 ????// 手动轮播,绑定事件108 ????$(".num li").mouseover(function () {109 ????????i = $(this).index();110 ????????console.log(i);111 ????????$(this).addClass("active");112 ????????$(this).siblings().removeClass("active"); // 取消其他标签按钮的active113 ????????$(".img li").eq(i).stop().fadeIn(1000).siblings().stop().fadeOut(1000);114 ????})115 ????116 ????// 自动轮播117 ????var c = setInterval(GO_R,1500)118 119 ????function GO_R() {120 ????????if (i == $img_num-1)121 ????????{122 ????????????i = -1;123 ????????}124 ????????i++;125 ????????$(".num li").eq(i).addClass("active")126 ????????$(".num li").eq(i).siblings().removeClass("active") ?// 取消其他标签按钮的active127 ????????$(".img li").eq(i).stop().fadeIn(1000).siblings().stop().fadeOut(1000);128 ????}129 ????function GO_L(){130 ????????if (i == 0)131 ????????{132 ????????????i = $img_num;133 ????????}134 ????????i--;135 ????????$(".num li").eq(i).addClass("active")136 ????????$(".num li").eq(i).siblings().removeClass("active") ?// 取消其他标签按钮的active137 ????????$(".img li").eq(i).stop().fadeIn(1000).siblings().stop().fadeOut(1000);138 ????}139 ????// 悬浮,清除计时器140 ????$(".outer").hover(function () {141 ????????clearInterval(c)142 ????},function () {143 ????????c = setInterval(GO_R,1500)144 ????})145 146 ????// button 加定播147 ????// 绑定一148 ????$(".right_btn").click(GO_R)149 ????// 绑定二150 ????// $(".right_btn").bind("click",GO_R)151 152 ????$(".left_btn").click(GO_L)153 154 </script>155 </html>

JQuery 图片轮播

原文地址:https://www.cnblogs.com/chenyanbin/p/10485200.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved