2013-08-01 37 views
2

我使用jQuery與bxSlider插件,這裏是鏈接到它只是櫃面:http://bxslider.com/的jQuery - bxSlider插件reloadSlider發出

我想重裝滑塊和我的自定義傳呼機我已經刪除後從它的某些幻燈片。

這是我曾嘗試:

$(function() { 
    var slider = $('#slider').bxSlider({ 
     pagerCustom: '#bx-pager' 
    }); 

    $('.list').on('click', '.delete', function() { 
     image = $(this).closest('li').find('[type="hidden"]'); 

     // image.attr('id') contains a string: image-0, image-1, image-2, etc. 
     $('#slider, #bx-pager').find('.' + image.attr('id')).remove(); 

     slider.reloadSlider({ 
      pagerCustom: '#bx-pager' 
     }); // I have also tried: slider.reloadSlider(); 
    }); 
}); 

它的工作原理部分。會發生什麼情況是滑塊重新加載很好,但它會在運行重新加載時完全刪除該分頁器。

非常感謝您的幫助。

+0

同樣的問題。你有沒有找到解決辦法? –

回答

11

只要我看到,這是bxSlider中的一個錯誤,實際上,當您調用reloadSlider方法時,內部稱爲方法destroySliderinit

destroySlider方法pagerEl元素被破壞,這是對的,如果你沒有使用一個自定義的,因爲它是在init方法以編程方式重建,但如果您使用的是自定義的一個不能被重新創建編程。

我最後修改destroySlider方法來檢查是否使用了自定義的尋呼機,在這種情況下,它不能被刪除。

這裏是前(1294線):

if(slider.pagerEl) slider.pagerEl.remove(); 

而經過:

if (slider.settings.pagerCustom === '') { 
    if(slider.pagerEl) slider.pagerEl.remove(); 
} 

我,只要我有時間發佈在GitHub上的錯誤。這裏

+4

你是冠軍!謝謝你一千倍=) – adamj

+3

高興,這是有益的:)我剛剛提出pull請求到項目的飯桶。 –

+0

@MicheleGargiulo你有一個鏈接到你的GitHub的問題/ PR?謝謝! –