JS实现简单图片轮播切换的过程及操作是怎样
Admin 2022-08-09 群英技术资讯 1043 次浏览
这篇文章主要讲解了“JS实现简单图片轮播切换的过程及操作是怎样”,文中的讲解内容简单、清晰、详细,对大家学习或是工作可能会有一定的帮助,希望大家阅读完这篇文章能有所收获。下面就请大家跟着小编的思路一起来学习一下吧。最近在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进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
jquery将元素改成只读的方法:1、利用“$(指定元素)”语句获取指定元素对象;2、利用attr()方法和readonly属性将元素改为只读状态 ,语法为“元素对象.attr("readonly","readonly")”。
这篇文章主要介绍了Vue 页面如何监听用户预览时间,首先需要借助vue页面的生命周期函数mounted和destroyed,分别加入开始计时和清除计时的逻辑,通过相关操作实现此功能,需要的朋友可以参考下
这篇文章主要介绍了javascript Number 与 Math对象,文章围绕 Number 与 Math对象的相关资料展开内容,需要的朋友可以参考一下,希望对你有所帮助
目录什么是备忘录?备忘录的概念1.引用透明2.查找表比较函数使用备忘录和不用备忘录解决方法是记录调用函数的返回结果备忘录的意义结论:什么是备忘录?前言;动态规划已出现了十多年。根据维基百科,它既是一种数学优化方法,也是一种计算机编程方法。一个问题要真正应用动态规划,必须具有两个关键属性:最优结构和重叠子结构。本文不会细
这篇文章主要为大家详细介绍了小程序实现自定义多层级单选和多选,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008