35

下の画像のように、ブートストラップでカルーセル スライドの総数と現在の数を取得する方法を教えてください。

現在のページと総ページ数を示す画像

標準のBootstrapカルーセルと、合計数と現在の数を表示<div>する.numクラスがあり、このコードを使用して数を取得しましたが、うまくいきませんでした

$('.num').html(){
  $('#myCarousel').carousel({number})
}

ありがとう

アップデート:

このjsfiddle LINKでサンプルを見つけてください

4

8 に答える 8

82

それぞれslide.itemクラスがあり、このようにスライドの総数を取得できます

var totalItems = $('.item').length;

Activeslideには という名前のクラスがあり、このようなactiveインデックスを取得できますactive slide

var currentIndex = $('div.active').index() + 1;

slid次のようにブートストラップ カルーセル イベントをバインドすることで、これらの値を更新できます。

$('#myCarousel').bind('slid', function() {
    currentIndex = $('div.active').index() + 1;
   $('.num').html(''+currentIndex+'/'+totalItems+'');
});

于 2013-07-24T18:01:37.177 に答える
18

@Khawer Zeshan のコードの更新

Bootstrap 3.0+ のslid.bs.carousel代わりにslidおよびonの代わりに使用しbindます。したがって、更新コードはそのようになります

var totalItems = $('.item').length;
var currentIndex = $('div.active').index() + 1;

$('#myCarousel').on('slid.bs.carousel', function() {
    currentIndex = $('div.active').index() + 1;
   $('.num').html(''+currentIndex+'/'+totalItems+'');
});
于 2015-07-31T17:20:05.133 に答える
4

ブートストラップ 3.2+:

carouselData.getItemIndex(carouselData.$element.find('.item.active'))
于 2014-12-02T10:47:46.853 に答える