JS实现简单图片轮播切换的过程及操作是怎样
Admin 2022-08-09 群英技术资讯 621 次浏览
最近在b站上学习的时候,学到了一个用原生js实现图片轮播切换效果的实战,码下来收藏
上图是这个小实战的效果图,整个小实战所实现的功能是图片自动轮播切换、点击上下键图片切换上下图片、点击右下角圆点切换相应图片、点击主菜单显示相应子菜单内容。
html页面布局
<body> <!--主区域,存放所有需要元素--> <div id="main" class="main"> <!-- 导航菜单 --> <div class="menu-box"></div> <!-- 子菜单 --> <div class="sub-menu hidden" id="sub-menu"></div> <!-- 主菜单 --> <div id="menu-content" class="menu-content"> <div class="menu-item"> <a href="#"> <span>item</span> <i></i> </a> </div> <div class="menu-item"> <a href="#"> <span>item</span> <i></i> </a> </div> <div class="menu-item"> <a href="#"> <span>item</span> <i></i> </a> </div> <div class="menu-item"> <a href="#"> <span>item</span> <i></i> </a> </div> </div> <!-- 图片轮播 --> <div id="banner" class="banner"> <a href="#"> <!-- slide-active表示当前需要显示图片的状态 --> <div class="banner-slide slide1 slide-active"></div> </a> <a href="#"> <div class="banner-slide slide2 "></div> </a> <a href="#"> <div class="banner-slide slide3"></div> </a> </div> <!-- 上一张、下一张按钮 --> <!-- javascript:void(0)表示这个a标签不做任何链接跳转 --> <a href="javascript:void(0)" class="button prev" id="prev"> <img src="images/r-btn.png" alt="上一张" class="img-prev"> </a> <a href="javascript:void(0)" class="button next" id="next"> <img src="images/r-btn.png" alt="下一张" class="img-next"> </a> <!-- 圆点导航 --> <div id="dots" class="dots"> <span class="active"></span> <span></span> <span></span> </div> </div> </div> </body>
js绑定事件
//封装一个代替getElementById()的方法 function byId(id){ //对id的类型做判断 return typeof(id)==="string"?document.getElementById(id):id; } //封装切换图片的函数(图片和圆点是配套的,图片有多少张圆点就有多少个,图片切换到第几张,圆点就到第几个) function changeImg(){ //遍历banner下所有的div,将其隐藏 for(var i = 0;i<len;i++){ pics[i].style.display = "none"; dots[i].className=""; //将span上的“active”类隐藏,点击圆点以后将其显示 } pics[index].style.display = "block"; //根据index找到当前图片,将其显示出来 dots[index].className = "active"; //根据index找到当前span,将其显示出来 } function slideImg(){ var main = byId("main"); //鼠标滑到图片上清除定时器,鼠标离开图片继续 main.onmouseover = function(){ //滑到图片上清除定时器,图片停止轮播 if(timer){ clearInterval(timer); } } //调用onmouseout事件 main.onmouseout = function(){ //鼠标离开定时器继续,每隔三秒切换一次图片 timer = setInterval(function(){ index++; //len=3 所以index的值只能是0,1,2 if(index>=len){ index=0; } //切换图片 changeImg(); },2000); } //自动在main上触发鼠标离开的事件,让图片自动切换,即在鼠标还没有滑过图片时,图片就睡自动切换 main.onmouseout(); //调用onmouseout方法 }
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了JavaScript Dom对象的操作,文张以浏览器网页就是一个Dom树形结构做为核心,然后根据核心进行更新Dom节点、获得Dom节点、删除一个Dom节点、添加一个新的节点操作,下面文章是详细内容,需要的朋友可以参考以下
这篇文章主要为大家介绍了原生javascript中检查对象是否为空示例实现,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
这篇文章主要给大家介绍了关于React获取input值并提交的2种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
JavaScript相等判断的避坑实战指南 目录 JS中的相等性 1.严格相等(===) 2.非严格相等(抽象相等)(==) 3.同值相等 4.零值相等 Object.is()实现方案 总结 JS中的相等性 1.严格相等(===) 严格相等本质上是判断一个值是否与自身相等,在比较前不进行隐式类型转换.当被比较的两个值类型相同,值也相同,且不是Number类型时,这两个值是全等的.当两个值类型是Number时,我们需要注意NaN,NaN和NaN不相等,+0和-0全等,其余情况,只要值相等,就是全等的. NaN === NaN //false
这篇文章给大家分享的是JS中所有字符串转换小写的方法,小编觉得挺实用的,因此分享给大家做个参考,本文使用了toLowerCase()和toLocaleUpperCase()这两个方法,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008