轮播图(html+css+js) ゝ一纸荒年。 2023-07-01 13:59 6阅读 0赞 前端知识:实现一个简单的轮播图。 直接上代码: html 代码 <!DOCTYPE html > <html> <head> <meta charset="UTF-8"> <title>轮播图</title> <link href="css/lunbo.css" type="text/css" rel="stylesheet"> </head> <body> <div class="lb_body"> <div class="lb_cont" style = "position:relative;left:0px;"> <ul> <li> <img src = "img/2.jpg"> </li> <li> <img src = "img/3.jpg"> </li> <li> <img src = "img/4.jpg"> </li> <li> <img src = "img/5.jpg"> </li> <li> <img src = "img/6.jpg"> </li> </ul> </div> <div class = "img_box"> <div class = "perimg"> <img src="img/pre.png"> </div> <div class = "nextimg"> <img src="img/next.png"> </div> </div> <div class = "li_box"> </div> </div> <script src="js/lunbo.js"></script> </body> </html> CSS代码 *{ padding:0px; margin:0px; } .lb_body{ width:600px; height:300px; overflow:hidden; margin:200px auto; position:relative; } .lb_body .img_box{ position:absolute; top:110px; width:100%; display:flex; justify-content:space-between; } .lb_body .img_box .perimg{ position:relative; left:10px; opacity:0.7; } .lb_body .img_box .perimg:hover{ opacity:1; } .lb_body .img_box .nextimg{ position:relative; right:10px; opacity:0.7; } .lb_body .img_box .nextimg:hover{ opacity:1; } .lb_body .lb_cont{ width:3000px; height:300px; transition:left 1s ease; } .lb_body .lb_cont ul{ display:flex; } .lb_body .lb_cont ul li{ width:600px; height:300px; list-style:none; } .lb_body .lb_cont ul li img{ width:100%; height:100%; } .li_box{ position:relative; bottom:25px; } .li_box ul{ display:flex; justify-content:center; } .li_box>ul>li{ list-style:none; width:15px; height:15px; background-color:#fff; border-radius:15px; margin-right:5px; opacity:0.6; } 重中之重 JavaScript代码: window.onload = function(){ var lb_cont = document.querySelector(".lb_cont"); var lb_body = document.querySelector(".lb_body"); var nextimg = document.querySelector(".nextimg"); var perimg = document.querySelector(".perimg"); var li_list = document.querySelectorAll(".lb_cont>ul>li"); var change = function(value){ var newleft = parseInt(lb_cont.style.left)+value; if(newleft < -2400){ lb_cont.style.left = "0px"; } else if(newleft > 0){ lb_cont.style.left = "-2400px"; } else{ lb_cont.style.left =newleft+"px"; } } //定义定时器 var timer; function play(){ timer = setInterval(nextimg.onclick,3000); nextimg.style.opacity = 0.7; perimg.style.opacity = 0.7; } function stop(){ clearInterval(timer); nextimg.style.opacity = 1; perimg.style.opacity = 1; } //鼠标的移动控制播放和暂停 lb_body.onmouseover = stop; lb_body.onmouseout = play; //创建图片下方小圆点 var li_box = document.querySelector(".li_box"); var ul = document.createElement("ul"); for(var i=0;i<li_list.length;i++){ var li = document.createElement("li"); if(i==0){ li.style.opacity= "1"; //默认第一个小圆点是1的透明度 } li.setAttribute("index",i); ul.appendChild(li); } li_box.appendChild(ul); //让小圆点高亮 var index = 0; var li_list = document.querySelectorAll(".li_box>ul>li"); function highLight(){ for(var i=0; i<li_list.length; i++){ li_list[i].style.opacity= "0.6"; } li_list[index].style.opacity= "1"; } //点击左按钮和右按钮 perimg.onclick = function (){ index--; if(index < 0){ index = li_list.length -1; } highLight(); change(600); } nextimg.onclick = function (){ index++; if(index > li_list.length -1){ index = 0; } highLight(); change(-600); } //启动轮播 play(); //点击小圆点进行切换 for(var j=0;j<li_list.length;j++){ li_list[j].onclick = function(){ var currentIndex = this.getAttribute("index"); change((index-currentIndex)*600); index = currentIndex; highLight(); } } } 简单的实现了轮播 上几张效果图吧! 目录结构 可自行修改![在这里插入图片描述][20200122182533537.png] ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZyaXN0amNqZG5jZw_size_16_color_FFFFFF_t_70]![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZyaXN0amNqZG5jZw_size_16_color_FFFFFF_t_70 1] ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZyaXN0amNqZG5jZw_size_16_color_FFFFFF_t_70 2] 这里图片下方的小圆点是自动跟着图片的轮播走的,同时也是可点击的。快来试试吧。哈哈哈,挺好玩的。 [20200122182533537.png]: https://img-blog.csdnimg.cn/20200122182533537.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZyaXN0amNqZG5jZw_size_16_color_FFFFFF_t_70]: https://img-blog.csdnimg.cn/20200122182649116.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZyaXN0amNqZG5jZw==,size_16,color_FFFFFF,t_70 [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZyaXN0amNqZG5jZw_size_16_color_FFFFFF_t_70 1]: https://img-blog.csdnimg.cn/20200122182611677.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZyaXN0amNqZG5jZw==,size_16,color_FFFFFF,t_70 [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZyaXN0amNqZG5jZw_size_16_color_FFFFFF_t_70 2]: https://img-blog.csdnimg.cn/2020012218272544.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZyaXN0amNqZG5jZw==,size_16,color_FFFFFF,t_70
相关 html script轮播图,javascript简单轮播图 \\轮播图实现原理: 通过多张图片平铺,用overflow:hidden只显示一张图片、其他的隐藏,无缝滚动用定时器改变元素的left值让图片呈现左右滚动的效果。\\![bV ゞ 浴缸里的玫瑰/ 2022年10月06日 13:57/ 0 赞/ 304 阅读
相关 轮播图 ![这里写图片描述][SouthEast] > html页面 <!DOCTYPE html> <html> <head> 布满荆棘的人生/ 2022年06月05日 09:07/ 0 赞/ 368 阅读
相关 轮播图 <html> <head> <meta name="viewport" id="viewport" content="width=device- 布满荆棘的人生/ 2022年05月29日 03:47/ 0 赞/ 295 阅读
相关 轮播图 点击左右按钮,切换图片。图片的序号也随之变化。 逻辑思维:每次点击按钮时,只需要改变img的“src”属性就可以切换图片。将图片的"src"放在数组中,就可以知道每一张图的位 落日映苍穹つ/ 2022年05月27日 08:16/ 0 赞/ 338 阅读
相关 轮播图 废话不多说,直接上代码 <!DOCTYPE html> <html> <head lang="en"> <meta charset=" 淩亂°似流年/ 2022年05月23日 09:38/ 0 赞/ 339 阅读
相关 轮播图 方法1 不太完善 html+js代码如下 <!DOCTYPE html> <html lang="en"> <head> 我不是女神ヾ/ 2022年05月13日 08:20/ 0 赞/ 332 阅读
相关 轮播图 本文转载至菜鸟教程,仅做笔记之用,方便自己学习 [菜鸟链接][Link 1] <!DOCTYPE html> <html> <head> 秒速五厘米/ 2021年12月10日 05:57/ 0 赞/ 527 阅读
相关 轮播图 setInterval setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。 给需要轮播的图片在js里声明一个变量 以数组的类型 在H 男娘i/ 2021年11月17日 06:32/ 0 赞/ 458 阅读
相关 轮播图 方案1 初始化插件: slides是一款基于jQuery无缝轮播图插件,支持图内元素动画,可以自定义动画类型 html代码 <div class="fullS 末蓝、/ 2021年06月10日 20:38/ 0 赞/ 675 阅读
还没有评论,来说两句吧...