2013-04-26 59 views
0

我想使用bxSlider製作滑塊,但第一張幻燈片只出現一次。這只是一個介紹幻燈片,將在下一次加載後刪除。刪除bxSlider onSliderAfter中的第一張幻燈片而不打破它

HTML

<div id="slider"> 
    <ul> 
     <li class="one"></li> 
     <li></li> 
     <li></li> 
     <li></li> 
    </ul> 
</div> 

我已經試過類似

$('#slider ul').bxSlider({ 
     pager: false, 
     auto: true, 
     onSlideAfter : function(){ 
      $('#slider ul li.one').remove(); 
     } 
    }); 

但這墜毀滑塊可能滑塊的寬度之前不等於其初始寬度現在一張幻燈片已除去。任何線索我應該怎麼做?

回答

1

一些搜索和測試後,該拿出

var topSlider = $('#slider ul').bxSlider({ 
    pager: false, 
    auto: true, 
    onSlideAfter : function(){ 
     if($('#slider ul li.one').length >= 1){ 
      $('#slider ul li.one').remove(); 
      topSlider.reloadSlider(); 
     } 
    } 
}); 

因此,當第二滑動完成後,我檢查,如果第一張幻燈片仍然存在,如果是的話,我將其刪除並重新加載滑塊沒有它。似乎工作得很好。

0

除非將其刪除,否則在onSlideBefore中檢查是否要轉到第一張幻燈片,並且是否立即將其發送給第二張?

$('#slider ul').bxSlider({ 
    pager: false, 
    auto: true, 
    onSlideBefore : function($slideElement, oldIndex, newIndex){ 
     if(newIndex == 0){ 
     $('#slider ul').bxSlider.goToSlide(1); 
     } 
    } 
}); 

我不確定bxslider會如何反應,即您是否會滑過第一張幻燈片到第二張幻燈片。如果是這種情況,那麼這可能不起作用。

相關問題