2012-03-20 24 views
0

Iは次のようにページング・ボタンがある場合、これはうまく機能する2つの主要な機能回転()rotateSwitchを有する(小プラグスライダー)jQueryのスライダー回転機能

rotate = function(){  
    var triggerID = $active.attr("rel") - 1; 
    var image_reelPosition = triggerID * imageWidth; 

    $(".paging a").removeClass('active'); 
    $active.addClass('active'); 

    //Slider Animation 
    $(".image_reel").animate({ 
     left: -image_reelPosition 
    }, 500); 

}; 


rotateSwitch = function(){  
    play = setInterval(function(){ 
     $active = $('.paging a.active').next(); 
     if ($active.length === 0) { 
      $active = $('.paging a:first'); //go back to first 
     } 
     rotate(); //Trigger the paging and slider function 
    }, 7000); (7 seconds) 
}; 

rotateSwitch(); 

を使用しています。

<div class="paging"> 
    <a href="#" rel="1">1</a> 
    <a href="#" rel="2">2</a> 
    <a href="#" rel="3">3</a> 
    <a href="#" rel="4">4</a> 
</div> 

しかし、私の問題(スタイルの必要性)は、このようにページネーションが行われていることです。

<div class="paging"> 
     <ul> 
       <li><a href="#" rel="1">1</a></li> 
       <li><a href="#" rel="2">2</a></li> 
       <li><a href="#" rel="3">3</a></li> 
       <li><a href="#" rel="4">4</a></li> 
      </ul> 
</div> 

次に、回転は機能しません。 (rotateSwitch()関数内の)リストの次の()子を見つけるためにどのように、これは誤りである場合

$active = $('.paging a.active').next(); 
    if ($active.length === 0) { 
     $active = $('.paging a:first'); //go back to first 
    } 

、:私は、問題は、この行の下のリンクを見つけていないと思いますか?

答えて

0

はい、a.activeliの内部に兄弟を持ちません。したがって、.next()の結果はありません。親を通過して、次にliを見つけて、次にリンク先までダイビングする必要があります。

$active = $('.paging a.active').parent().next().find('a'); 
関連する問題