2011-04-12 35 views
0

我正在使用AnythingSlider來顯示推文,博客文章,flickr照片和YouTube視頻的混搭,並且最初它的工作效果非常好。我試圖添加排序功能,但要做到這一點,我需要刪除按鈕上的所有幻燈片 - >添加新幻燈片 - >並重新初始化插件。從AnythingSlider中刪除所有面板並重新啓動插件

AnythingSlider文檔(以及代碼)暗示了移除幻燈片的能力,插件應該跨越一步。我一直沒能找到任何形式的刪除代碼的任何地方,所以我fiugured像這樣的工作:

$("#slider li:not(.cloned)").remove(); 

,但到目前爲止,我沒有運氣。任何人都有這樣的經驗嗎?非常感謝。

回答

1

沒有任何內置代碼可以刪除幻燈片,因此您可以使用上面的代碼,或者如果您確實想要刪除所有幻燈片,請執行以下操作(無需避免刪除克隆的幻燈片):

$('#slider li').remove(); 

然後在你想要的任何新的幻燈片添加(排序或其他)

$('<li>New Stuff</li>').appendTo('#slider'); 

然後更新滑塊

$('#slider').anythingSlider(); // don't include options 

上述代碼基本上與AnythingSlider demo page(主題選擇器旁邊的按鈕)上的代碼相同。我在下面加入了更多評論:)

// Add a slide 
var imageNumber = 1; 
$('button.add').click(function(){ 
    $('#slider1') 
    // add a new slide, but cycle between two images 
    .append('<li><img src="images/slide-tele-' + (++imageNumber%2 + 1) + '.jpg" alt="" /></li>') 
    // update the slider 
    .anythingSlider(); 
}); 
$('button.remove').click(function(){ 
    // don't let the last slide get deleted - it's ok if you do delete it, it's just not purdy ;) 
    if ($('#slider1').data('AnythingSlider').pages > 1) { 
    // remove the last slide (the cloned slide is actually the last, that's why there is a ":not()" in there 
    $('#slider1 > li:not(.cloned):last').remove(); 
    // update the slider 
    $('#slider1').anythingSlider(); 
    } 
}); 
相關問題