网页图片左右滚动特效实例

来源:互联网 发布:unity3d游戏打不开 编辑:程序博客网 时间:2024/05/19 14:16


图图:





    很多网站上都有这个单击左右箭头滚动图片的效果;


看下代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />  <script type="text/javascript" src="js/jquery-1.8.3.js"></script> <title>jq控制左右箭头滚动图片列表</title> <style type="text/css">    *{ margin:0; padding:0;font-size: 12px;}    ul{ list-style:none;}     .slider{ width:960px;border: 1px #708090 solid; padding:10px 20px;height: 130px;margin: 100px auto;position: relative;cursor: pointer;}     #slider_pic{ width: 840px;margin:0 auto;overflow: hidden;height: 130px;position: relative;}     .prev,.next{position: absolute;width: 20px;height: 20px;cursor: pointer;top:60px;background-color: #daa520; text-align: center;line-height: 20px;font-weight: bold;color: #fff;}     .next{right: 20px;}     .no_click{background-color: #808080;}     #slider_pic li{float: left;margin-right: 10px;}     #slider_pic ul{position: absolute;left: 0;} </style>     <script type="text/javascript">         $(function(){             var oPic=$('#slider_pic').find('ul');             var oImg=oPic.find('li');             var oLen=oImg.length;             var oLi=oImg.width();             var prev=$("#prev");             var next=$("#next");           oPic.width(oLen*210);//计算总长度             var iNow=0;             var iTimer=null;             prev.click(function(){                  if(iNow>0){                     iNow--;                  }                 ClickScroll();             })             next.click(function(){                 if(iNow<oLen-3){                      iNow++                 }                 ClickScroll();             })             function ClickScroll(){                 iNow==0? prev.addClass('no_click'): prev.removeClass('no_click');                 iNow==oLen-3?next.addClass("no_click"):next.removeClass("no_click");                 oPic.animate({left:-iNow*210})             }         })      </script> </head> <body>     <div class="slider">         <span class="prev no_click" id="prev"><<</span>         <span class="next " id="next">>></span>       <div id="slider_pic">         <ul>            <li><img src="images/tu1.jpg" width="200" height="130" /></li>            <li><img src="images/tu2.jpg" width="200" height="130" /></li>            <li><img src="images/tu3.jpg" width="200" height="130" /></li>            <li><img src="images/tu4.jpg" width="200" height="130" /></li>            <li><img src="images/tu5.jpg" width="200" height="130" /></li>            <li><img src="images/tu6.jpg" width="200" height="130" /></li>            <li><img src="images/tu7.jpg" width="200" height="130" /></li>                      </ul>       </div>    </div> </body> </html>

代码说明:

    两层div,内层放ul列表,每个列表项链接一个图片;左右箭头在外层div中,其span标签的id分别为prev和next;
    内层div的css类为slider_pic,外层div的css类为slider;
    .no_click定义滚动到头不可点击的颜色;
    cursor:pointer定义鼠标光标为一只手的形状;


    滚动的基本代码在ClickScroll()函数中,
    oPic.animate({left:-iNow*210})
    调用jquery的animate函数,每点击一下鼠标,增大或减小left属性值;
    如果左端已经滚到头,为prev添加css类'no_click',否则移除该css类;
    右端滚到头,为next添加css类'no_click',否则移除该css类。



0 0
原创粉丝点击