当前位置:主页 > 网页前端 > jquery >

jquery实现图片自动轮播效果

时间:2022-07-21 11:08:59 | 栏目: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>

以上是这个图片轮播效果的css的布局样式及html代码部分(相信大家很容易实现!就不赘述了……),下面一起来看用jquery如何实现此效果吧!

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实现图片自动轮播效果的详细步骤。

您可能感兴趣的文章:

相关文章