这篇文章主要介绍“jquery如何实现图片自动轮播效果”,在日常操作中,相信很多人在jquery如何实现图片自动轮播效果问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”jquery如何实现图片自动轮播效果”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
效果图如下:
HTML代码如下:
<div id="container"> <img src="icon1.jpg" class="left"> <img src="icon2.jpg" class="right"> <div id="scroll"> <div id="scroll_pic"> <ul class="count"> <li><img src="1.jpg" title="1.jpg"><span>1</span></li> <li><img src="2.jpg" title="2.jpg"><span>2</span></li> <li><img src="3.jpg" title="3.jpg"><span>3</span></li> <li><img src="4.png" title="4.png"><span>4</span></li> <li><img src="3.jpg" title="3.jpg"><span>5</span></li> </ul> <ul> <li><img src="1.jpg" title="1.jpg"><span>11</span></li> <li><img src="2.jpg" title="2.jpg"><span>22</span></li> <li><img src="3.jpg" title="3.jpg"><span>33</span></li> <li><img src="4.png" title="4.png"><span>44</span></li> <li><img src="3.jpg" title="3.jpg"><span>55</span></li> </ul> </div> </div></div>
jquery来实现图片自动无缝轮播的效果,步骤及代码如下:
步骤一:引入jquery文件,代码如下:
<script type="text/javascript" src="jquery-1.7.min.js"></script>
步骤二:创建两个函数,分别控制图片向左右移动 - - moveRight() 和 moveLeft(),代码如下:
//右移函数function moveRight(){ var left=$('#scroll_pic').position().left; //获取元素相对于左端的偏移量 $('#scroll_pic').animate({"left":"+="+oLiWidth+"px"},800) //函数每被调用一次匹配元素发生水平偏移}//左移函数function moveLeft(){ var left=$('#scroll_pic').position().left; $('#scroll_pic').animate({"left":"-="+oLiWidth+"px"},800);}
步骤三:完成对应事件的绑定,实现基本的手动播放效果,代码如下:
//事件绑定$('.left').on('click',moveRight);$('.right').on('click',moveLeft);
步骤四:实现手动轮播效果,即:分别为上述两个偏移函数【moveRight() 和 moveLeft()】添加条件判断。代码如下:
//右移函数function moveRight(){ $('.left').off('click'); //移除click事件 var left=$('#scroll_pic').position().left; //轮播条件控制语句 if(left==0){ $('#scroll_pic').css('left',-oLiWidth*oLi+'px'); } $('#scroll_pic').animate({"left":"+="+oLiWidth+"px"},800,function(){ $('.left').on('click',moveRight);//动画结束,重新绑定click事件 })}//左移函数function moveLeft(){ $('.right').off('click'); var left=$('#scroll_pic').position().left; if(left==-oLiWidth*oLi){ $('#scroll_pic').css('left',0); } $('#scroll_pic').animate({"left":"-="+oLiWidth+"px"},800,function(){ $('.right').on('click',moveLeft); })}
步骤五:实现图片自动轮播效果,即:添加定时器。代码如下:
//定时器function autoRun(){ return setInterval(moveLeft,2000);}var timer=autoRun(); //调用定时器;
步骤六:为最外层容器,添加鼠标移入移出事件,实现手动暂停自动轮播的效果。代码如下:
$('#container').hover(function(){ clearInterval(timer);},function(){ timer=autoRun();})
到此,关于“jquery如何实现图片自动轮播效果”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!