介绍
这篇文章将为大家详细讲解有关js如何实现图片轮播效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
js有什么特点
1, js属于一种解释性脚本语言;2,在绝大多数浏览器的支持下,js可以在多种平台下运行,拥有着跨平台特性;3,js属于一种弱类型脚本语言,对使用的数据类型未做出严格的要求,能够进行类型转换,简单又容易上手;4,js语言安全性高,只能通过浏览器实现信息浏览或动态交互,从而有效地防止数据的丢失;5,基于对象的脚本语言,js不仅可以创建对象,也能使用现有的对象。
具体思路:
一、页面加载,获取整个容器,所有放数字索引的李及放图片列表的ul、定义放定时器的变量,存放当前索引的变量指数
二、添加定时器,每隔2秒钟指数递增一次,调用一次切换图片函数
提示:
1,指数不能一直无限制的递增下去,需做判断
2,调用切换图片函数时需将递增之后的指数作为参数传过去
三、定义图片切换函数
提示:
,1 .遍历所有放数字索引的,将每个李上的类去掉。
,2 .根据传递过来的索引值找到对应的李给它添加类设为当前高亮显示。
,3.根据传递过来的索引值计算放图片的ul的顶值
,4. 改变指数的值,让其等于传递过来的参数值
<强>注意:>强放图片的ul的顶值=指数*单张图片的高度(所有图片必须等高)
四、鼠标划过整个容器时,图片停止切换,离开继续
提示:
1只;鼠标滑过整个容器时清除定时器
2只;鼠标离开时继续执行定时器,切换至下一张图片
五,遍历所有放数字的,且给他们添加索引,鼠标滑过时切换至对应的图片。
鼠标滑过时调用图片切换函数,将滑过的李的索引传过去。
具体代码如下:
& lt; ! doctype html>, & lt; html  lang=癳n"祝辞, & lt; head>, ,& lt; meta charset=癠TF-8"祝辞, ,& lt; title> Document, & lt; style>大敌; ,*{保证金:0,, ,填充:0; ,list-style:没有;}, ,.wrap{高度:170 px;, 宽度:490 px;大敌; ,保证金:60 px 汽车;, ,溢出:,隐藏; ,位置:,相对; ,保证金:100 px 汽车;}, ul, .wrap {:绝对;},, 李,.wrap ul {高度:170 px;}, ol, .wrap {位置:绝对的,, ,右:5 px; ,底部:10 px;}, 李,.wrap ol {高度:20 px;,宽度:,20 px;, 背景:# ccc;大敌; ,边界:solid 1 px # 666;, ,margin-left: 5 px; ,颜色:# 000; ,浮动:左; ,行高:中心; ,text-align:中心; ,光标:指针;}, ,.wrap ol 碧绿{背景:# E97305;, ,颜色:# fff;}, ,, & lt;/style>大敌; ,& lt; script 类型=拔谋?javascript"祝辞, ,window=函数(){ ,var 包=. getelementbyid(& # 39;包# 39;),, ,图片=. getelementbyid(& # 39;图片# 39;).getElementsByTagName (“li"), ,列表=. getelementbyid(& # 39;列表# 39;).getElementsByTagName(& # 39;李# 39;),, 指数=0,大敌; ,计时器=零; ,, ,//定义并调用自动播放函数,=,,timer  setInterval(播放,2000),, ,, ,//鼠标划过整个容器时停止自动播放,=,,wrap.onmouseover  function (), {, ,clearInterval(计时器); }大敌; ,, ,//鼠标离开整个容器时继续播放至下一张,=,,wrap.onmouseout  function (), {,=,,timer  setInterval(播放,2000),, }大敌; ,//遍历所有数字导航实现划过切换至对应的图片, ,for (var 小姐:=,0;,小姐:& lt;, list.length;,我+ +),{, ,名单[我].onmouseover =, function (), {, ,clearInterval(计时器);=,,index  this.innerText 作用;1;, ,changePic(指数),, ,}; ,}; ,, ,function autoPlay (), {, ,if (+ + index 祝辞=,pic.length), index =, 0;, ,changePic(指数),, }大敌; ,, ,//定义图片切换函数, ,function changePic (curIndex), {, ,for (var 小姐:=,0;,小姐:& lt;, pic.length;, + + i), {, ,图片[我].style.display =,“none",, ,名单[我].className =,““, }大敌; ,图片[curIndex] .style.display =,“block",, ,名单[curIndex] .className =,“知道,, }大敌; ,, ,}; ,, ,& lt;/script>,, 时间/head> & lt; & lt; body>, ,& lt; div 类=皐rap", id=& # 39;包# 39;祝辞, ,& lt; ul id=皃ic"祝辞, ,& lt; li> & lt; img  src=https://www.yisu.com/zixun/?. jpg”alt=" ">js如何实现图片轮播效果