0

プロジェクトで BX スライダーを使用していて、destroy.slider() メソッドで問題が発生しています。クライアントが CMS を介して画像を追加しているため、スライダーのインスタンスごとに可変のスライド数があります。スライドが 5 つ未満のときにスライダーを強制終了し、通常の表示状態 (コントロールのないグリッド) に戻そうとしています。ドキュメントを読んだ後、これでうまくいくと思いましたが、うまくいきませんでした。getSlideCount が 2 を返しているにもかかわらず、スライダーはそのままです。

ありがとう!

var slider = $('#view-profiles').bxSlider({
  minSlides: 4,
  maxSlides: 4,
  nextSelector: '.next',
  prevSelector: '.back',
  slideWidth:   '220px',
  pager: false,
  slideMargin: '0',
  nextText: '',
  prevText: '',
  infiniteLoop:false,
  hideControlOnEnd: true



}); 

if (slider.getSlideCount() < 5){
  slider.destroySlider();
}
4

2 に答える 2

0

これを試して

var total_slide = slider.getSlideCount() ;

if (total_slide  < 5){
  slider.destroySlider();
}

また

var slider = $('#view-profiles').bxSlider({
  minSlides: 4,
  maxSlides: 4,
  nextSelector: '.next',
  prevSelector: '.back',
  slideWidth:   '220px',
  pager: false,
  slideMargin: '0',
  nextText: '',
  prevText: '',
  infiniteLoop:false,
  hideControlOnEnd: true,
  onSliderLoad:function() 
            {
            if (slider.getSlideCount() < 5){
            slider.destroySlider();
            }    
 }
}); 
于 2013-03-09T07:01:00.267 に答える
0
if($('#view-profiles > div').length > 4){
            var slider = $('#view-profiles').bxSlider({
                  minSlides: 4,
                  maxSlides: 4,
                  nextSelector: '.next',
                  prevSelector: '.back',
                  slideWidth:   '220px',
                  pager: false,
                  slideMargin: '0',
                  nextText: '',
                  prevText: '',
                  infiniteLoop:false,
                  hideControlOnEnd: true   
                });
    }
于 2016-03-09T10:48:14.097 に答える