2016-06-15 3 views
1

ページ上にIDを持たない複数の汎用ブートストラップカルーセルを個別に動作させる方法はありますか?現在、どちらのカルーセルも動作していますが、前/次をクリックすると両方のカルーセルが変更されます。私はクリックしたカルーセルをターゲットにすると思いますか?IDのない複数のブートストラップカルーセル?

ありがとうございます!

HTML

<div class="carousel slide" data-ride="carousel" data-wlp-component="wlp.carousel"> 
     <!-- Indicators --> 
     <ol class="carousel-indicators"> 
      <li data-target=".carousel" data-slide-to="0" class="active"></li> 
      <li data-target=".carousel" data-slide-to="1"></li> 
      <li data-target=".carousel" data-slide-to="2"></li> 
      <li data-target=".carousel" data-slide-to="3"></li> 
     </ol> 

     <!-- Wrapper for slides --> 
     <div class="carousel-inner" role="listbox"> 
      <div class="item active"> 
      <img src="https://placeholdit.imgix.net/~text?txtsize=33&txt=960%C3%97370&w=960&h=370" alt="Image1"> 
      </div> 

      <div class="item"> 
      <img src="https://placeholdit.imgix.net/~text?txtsize=33&txt=960%C3%97370&w=960&h=370" alt="Image2"> 
      </div> 

      <div class="item"> 
      <img src="https://placeholdit.imgix.net/~text?txtsize=33&txt=960%C3%97370&w=960&h=370" alt="Image3"> 
      </div> 

      <div class="item"> 
      <img src="https://placeholdit.imgix.net/~text?txtsize=33&txt=960%C3%97370&w=960&h=370" alt="Image4"> 
      </div> 
     </div> 

     <!-- Left and right controls --> 
     <a class="left carousel-control" href=".carousel" role="button" data-slide="prev"> 
      <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span> 
      <span class="sr-only">Previous</span> 
     </a> 
     <a class="right carousel-control" href=".carousel" role="button" data-slide="next"> 
      <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span> 
      <span class="sr-only">Next</span> 
     </a> 
     </div> 
     <!-- Second Carousel --> 
     <div class="carousel slide" data-ride="carousel" data-wlp-component="wlp.carousel"> 
     <!-- Indicators --> 
     <ol class="carousel-indicators"> 
      <li data-target=".carousel" data-slide-to="0" class="active"></li> 
      <li data-target=".carousel" data-slide-to="1"></li> 
      <li data-target=".carousel" data-slide-to="2"></li> 
      <li data-target=".carousel" data-slide-to="3"></li> 
     </ol> 

     <!-- Wrapper for slides --> 
     <div class="carousel-inner" role="listbox"> 
      <div class="item active"> 
      <img src="https://placeholdit.imgix.net/~text?txtsize=33&txt=960%C3%97370&w=960&h=370" alt="Image1"> 
      </div> 

      <div class="item"> 
      <img src="https://placeholdit.imgix.net/~text?txtsize=33&txt=960%C3%97370&w=960&h=370" alt="Image2"> 
      </div> 

      <div class="item"> 
      <img src="https://placeholdit.imgix.net/~text?txtsize=33&txt=960%C3%97370&w=960&h=370" alt="Image3"> 
      </div> 

      <div class="item"> 
      <img src="https://placeholdit.imgix.net/~text?txtsize=33&txt=960%C3%97370&w=960&h=370" alt="Image4"> 
      </div> 
     </div> 

     <!-- Left and right controls --> 
     <a class="left carousel-control" href=".carousel" role="button" data-slide="prev"> 
      <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span> 
      <span class="sr-only">Previous</span> 
     </a> 
     <a class="right carousel-control" href=".carousel" role="button" data-slide="next"> 
      <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span> 
      <span class="sr-only">Next</span> 
     </a> 
     </div> 

JS

 $('.carousel').each(function(){ 
      $(this).carousel({ 
       interval: 3000 
      }); 
      $(this).on('click', '.left', function(){ 
       $(this).carousel('prev'); 
      }); 
      $(this).on('click', '.right', function(){ 
       $(this).carousel('next'); 
      }); 
     }); 
+0

Bootstrapは、デフォルトで 'onleft'と' .right'に 'onclick'リスナーを付けています(インスペクタ/開発者のコ​​ンソールから見ることができます)、JSコードが期待通りに動作しない理由が考えられます。 jQueryの '.off()'メソッドを使ってデフォルトのハンドラを削除しようとする可能性があります。 – Kairat

+0

@Kairatあなたが言っていることを私は見ています。特定の親のカルーセルを見つける方法があるのなら、私は不思議です – Fawn

答えて

0

あなたは、2つの異なるカルーセルのイベントを結合するように選択異なる持っている必要があります私の理解あたりとして。したがって、異なるクラスまたは異なるIDまたは2つの異なるIDを選択する必要があります。

+0

うーん、私はそれを動的にして、IDまたは別のクラスでコード化する必要がないようにしようとしています。 – Fawn

+0

したがって、個別のIDまたはクラスを動的に作成することができます。 –

関連する問題