基于jQuery实现淡入淡出效果轮播图
用JavaScript做了平滑切换的焦点轮播图之后,用jQuery写了个简单的淡入淡出的轮播图,代码没有做优化,html结构稍微有一些调整,图片部分用ul替换了之前用的div。
html结构如下:
<divid="container"> <ulclass="pic"> <li><ahref="javascript:;"><imgsrc="DSC01627.jpg"alt="pic1"></a></li> <li><ahref="javascript:;"><imgsrc="DSC01628.jpg"alt="pic2"></a></li> <li><ahref="javascript:;"><imgsrc="DSC02637.jpg"alt="pic3"></a></li> </ul> <ulid="position"> <liclass="cur"></li> <liclass=""></li> <liclass=""></li> </ul> <ahref="javascript:;"id="prev"class="arrow"><</a> <ahref="javascript:;"id="next"class="arrow">></a> </div>
css设置:
*{ margin:0; padding:0; text-decoration:none; } ul{ list-style:none; } #container{ position:relative; width:400px; height:200px; margin:20pxauto; } .picli{ position:absolute; top:0; left:0; display:none; } .picliimg{ width:400px; height:200px; } #position{ position:absolute; bottom:0; right:0; margin:0; background:#000; opacity:0.4; width:400px; text-align:center; } #positionli{ width:10px; height:10px; margin:02px; display:inline-block; -webkit-border-radius:5px; border-radius:5px; background-color:#afafaf; } #position.cur{ background-color:#ff0000; } .arrow{ cursor:pointer; display:none; line-height:39px; text-align:center; font-size:36px; font-weight:bold; width:40px; height:40px; position:absolute; z-index:2; top:50%; margin-top:-20px;/*width的一半*/ background-color:RGBA(0,0,0,.3); color:#fff; } .arrow:hover{ background-color:RGBA(0,0,0,.7); } #container:hover.arrow{ display:block; } #prev{ left:20px; } #next{ right:20px; }
JavaScript代码:
$(function(){ //第一张显示 $(".picli").eq(0).show(); //鼠标滑过手动切换,淡入淡出 $("#positionli").mouseover(function(){ $(this).addClass('cur').siblings().removeClass("cur"); varindex=$(this).index(); i=index;//不加这句有个bug,鼠标移出小圆点后,自动轮播不是小圆点的后一个 //$(".picli").eq(index).show().siblings().hide(); $(".picli").eq(index).fadeIn(500).siblings().fadeOut(500); }); //自动轮播 vari=0; vartimer=setInterval(play,2000); //向右切换 varplay=function(){ i++; i=i>2?0:i; $("#positionli").eq(i).addClass('cur').siblings().removeClass("cur"); $(".picli").eq(i).fadeIn(500).siblings().fadeOut(500); } //向左切换 varplayLeft=function(){ i--; i=i<0?2:i; $("#positionli").eq(i).addClass('cur').siblings().removeClass("cur"); $(".picli").eq(i).fadeIn(500).siblings().fadeOut(500); } //鼠标移入移出效果 $("#container").hover(function(){ clearInterval(timer); },function(){ timer=setInterval(play,2000); }); //左右点击切换 $("#prev").click(function(){ playLeft(); }) $("#next").click(function(){ play(); }) })
精彩专题分享:jQuery图片轮播JavaScript图片轮播Bootstrap图片轮播
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。