1. 程式人生 > >使用jquery實現上下左右移動效果

使用jquery實現上下左右移動效果

<body>
<div style="margin:0 auto;width:500px;">
    <div id="scrollable">
        <a class="prev" href="#"></a>
        <!--  外部div使用相對定位,裡面的div使用絕對定位 -->
        <div class="items" style="overflow: hidden; position: relative; visibility: visible; width: 478px;">
            <div style="position: absolute; width: 200000em; left: 0px;" class="scrollable_demo">
                <a>1</a>
                <a>2</a>
                <a>3</a>
                <a>4</a>
                <a>5</a>
                <a>6</a>
                <a>7</a>
                <a>8</a>
                <a>9</a>
                <a>10</a>
                <a>11</a>
                <a>12</a>
                <a>13</a>
                <a>14</a>
                <a>15</a>
            </div>
            <br clear="all"/>            
        </div>
        <!-- "prev page" link -->
        <a  class="next" href="#"></a>
</div>
</div>

</body>

js:

 $(function(){
      var $content = $(".scrollable_demo");
 var i = 5;  //已知顯示的<a>元素的個數
 var m = 5;  //用於計算的變數
 var count = $content.find("a").length;//總共的<a>元素的個數
 $(".next").click(function(){
if( !$content.is(":animated")){  //判斷元素是否正處於動畫,如果不處於動畫狀態,則追加動畫。
if(m<count){  //判斷 i 是否小於總的個數
m++;
$content.animate({left: "-=96px"}, 600);
}
}
 });
 $(".prev").click(function(){
if( !$content.is(":animated")){
if(m>i){ //判斷 i 是否小於總的個數
m--;
$content.animate({left: "+=96px"}, 600);
}
}
 });
  })

需引入:jquery.js

效果如下: