2012-07-04 202 views
-1

我目前擁有的代碼是這樣的。將動畫添加到已動態添加的新元素

function update(){ 
    latest_id = $('#image:first').data('position'); /* == 12 */ 
    $.ajax({ 
     type: "POST", 
     url: "../web/update/" + latest_id + "", 
     success: function(data) { 
      $('#my_like').after(data); 
      $('.newly-added').animate({"margin-left": "+=66px"}, "fast"); 
     }, 
     error: function(response) { 
      alert("failed"); 
     }, 
    }); 
} 

setInterval(function() { 
    update(); 
}, 4000); 

但是,因爲該元素已新添加,它不會收到新的動畫部分。我做了一些研究並找到了.live,但需要一些東西來啓動它,例如點擊。

+0

你能否提供更多的上下文?什麼是'.newly-added'? AJAX是否返回「數據」?如果是這樣,我不明白爲什麼你的當前代碼不起作用,只要你將動畫元素添加到DOM之後調用'animate'即可。 – Cecchi

+0

對不起,所返回的數據是一個新添加類的圖像:) – Harry

+0

如果有什麼方法可以將JsFiddle(可能不是用ajax,但是僞造一個響應或某物)放在一起,或者向我們展示一個活動示例它會有幫助的頁面。也可以在'.animate()'之前嘗試調用'console.log($('.new-added'))'以確保它確實在DOM中。 – Cecchi

回答

0

修正了jquery包含的問題。