ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

用javaScript实现轮播图效果 包括自动变换,按钮控制,上一张下一张切换

2020-02-24 09:54:39  阅读:262  来源: 互联网

标签:function 一张 iNow 轮播 javaScript aBtn tab var left


javaScript实现轮播图效果(逆战总结)

1.HTML代码

<div id="wrap">
<img src="images/1.jpg" alt="" class="on">
<img src="images/2.jpg" alt="">
<img src="images/3.jpg" alt="">
<img src="images/4.jpg" alt="">
<div class="btn">
<span class="active"></span>
<span></span>
<span></span>
<span></span>
</div>
<i class="left" id="prev"></i>
<i class="right" id="next"></i>
</div>
2.css代码

#wrap{
position: relative;
width:590px;
height: 470px;
}
#wrap img{
position: absolute;
top: 0;
left: 0;
/*display: none;*/
opacity: 0;

}
#wrap .on{
/*display: block;*/
transition: 2s;
opacity: 1;
}
.btn {
position: absolute;
bottom: 20px;
left: 50%;
margin-left: -44px;
}
.btn span{
float: left;
width: 8px;
height: 8px;
border:2px solid rgba(255,255,255,0.4);
border-radius: 5px;
margin-right: 10px;
}
.btn .active{
background: white;
cursor: pointer;
}
.left,.right{
display: block;
width: 37px;
height: 53px;
position: absolute;
top: 50%;
margin-top: -27px;
cursor: pointer;
}
.left{
background: url("images/arrow.png") left top;
}
.right{
background: url("images/arrow.png") left -53px;
right: 0;
}
3.js代码

window.onload = function () {
var oWrap = document.getElementById('wrap');
var aImg = oWrap.getElementsByTagName('img');
var aBtn = oWrap.getElementsByTagName('span');
var oPrev = document.getElementById('prev');
var oNext = document.getElementById('next');
var iNow =0;

function tab(){
for (var i =0;i<aBtn.length;i++){//清空所有按钮选中样式以及图片显示样式
aBtn[i].className='';
aImg[i].className='';
}
aBtn[iNow].className='active';//设置当前按钮选中样式以及当前图片透明度
aImg[iNow].className='on';
}

setInterval( function () {//每两秒循环变换下一张图片
iNow++;
if (iNow==aBtn.length)iNow=0;
tab();
},2000);

for (var i =0;i<aBtn.length;i++){
aBtn[i].index=i;//为按钮添加自定义属性(索引)目的是使图片和按钮相对应
//按钮
aBtn[i].οnmοuseοver= function () {
iNow=this.index; //是按钮所控制显示的图片与左右箭头控制显示的图片相对应
tab();
}
//下一个箭头
oNext.onclick = function () {
iNow++;
if (iNow==aImg.length)iNow=0;
tab();
}
//上一个箭头
oPrev.onclick = function () {
iNow--;
if (iNow==-1)iNow=aImg.length-1;
tab();
}

}

}

 

标签:function,一张,iNow,轮播,javaScript,aBtn,tab,var,left
来源: https://www.cnblogs.com/jiaiyinyang/p/12355665.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有