1

2つのボタン(左スクロールと右スクロール)のあるページがあり、クリックすると、ページはdiv幅で左右に移動する必要があります(divごとに幅が異なります)。これはjQueryで実行できますか?現在のdivid(境界線の左側に近いもの)を読み取る方法、および前/次のdivの幅でスクロール(左または右)を定義する方法がわかりませんか?

4

2 に答える 2

1

クリックすると、カウンターが増加し、減少しますvar c。 これは、目的の DIVを取得してページをその位置に移動するだけでなく
、目的の DIV をターゲットにするのに役立ちます。.eq( c )
.offset().left

jsBin デモ

HTML (DIV に .box を追加):

<div class="box" id="01" style="width:200px; height:100px; border:solid 1px; float:left">div01</div>

jQuery:

$(function(){

  var c = 0;
  var boxN = $('.box').length;
  
  $('#left, #right').on('click', function( e ){
    
    e.preventDefault();
   
    c = this.id=='right' ? ++c%boxN : --c ;
    if(c<0){ c=boxN-1; }
    var boxL = $('.box').eq( c ).offset().left;
    
    $('html, body').stop().animate({scrollLeft: boxL});
    
    
  });
  
});
于 2012-12-24T13:10:25.810 に答える
0

ある種のスライダーについて話している場合は、containerdivとinnerdivがあり、そこに含まれるアイテムの全長が含まれています。

containerdivはオーバーフローを非表示にします

次に、divの位置を制御します

これはただ一つの考え方です...

于 2012-12-24T12:55:36.053 に答える