2012-01-09 35 views
0

新列表項由JS生成。 每個新的列表項都帶有一個很好的動畫。現在我不想在第一個列表項上看到動畫。jquery不在第一項上顯示動畫

到目前爲止,我嘗試添加slice(1)的代碼,但沒有運氣:

$('li.show').slice(1).animate({left: '-=100'}, 300); 

我怎樣才能使用JQuery的最新版本這項工作?

+1

它似乎是[在JSFiddle中正常工作](http://jsfiddle.net/PPvG/HtKzq/)。你能詳細說一下嗎?例如。你的CSS是什麼樣的? – PPvG 2012-01-09 22:27:51

+0

發佈更多的Javascript代碼以及任何相應的HTML會很有用。 – 2012-01-09 22:29:29

+0

列表項是由AJAX生成的,這可能是爲什麼它不起作用 – Jroen 2012-01-09 22:30:46

回答

1

如果您使用AJAX請求來構建您的列表,那麼您需要調用您在AJAX請求的回調函數中發佈的代碼,以便在嘗試操縱它之前添加的HTML將存在於DOM中:

$.get('<URL>', function (serverResponse) { 

    //append the new list-items to the list, select them, un-select the first index, then animate the remaining elements 
    $('ul').append(serverResponse).children('.show').slice(1).animate({left: '-=100'}, 300); 
}); 

注意,此代碼段預計你的服務器端腳本可以添加對進入DOM輸出有效的HTML。