2012-12-10 54 views
0

好吧,男士們,這是問題。我正在使用自動更新(使用ajax)在我的網站上加載自dom加載後可能發佈的任何新評論。該腳本工作正常,因爲在新評論中將加載ajax調用;不過,我想要調用fadeIn與jQuery的響應。我在其他地方使用此代碼$(response).hide().prependTo('.ideas').fadeIn('slow');,並且它工作正常。我相信它適用於其他地方,因爲我使用的是.on()方法,但我不能在這裏使用它,因爲我沒有使用任何類型的用戶操作來觸發事件。淡入淡出使用livequery,自動ajax調用與setInterval不褪色

下面是當前的代碼:

setInterval(function() {

if (window.location.pathname == "/" || window.location.pathname == "/appreciate" || window.location.pathname == "/appreciate#") { 
     var first_message = $('.messages > div.message_wrapper:first').attr('id'); 
     var pathname = window.location.pathname; 
     $.ajax({ 
      type: "POST", 
      url: "/update_comments.php", 
      data: {first_message: first_message, pathname: pathname}, 
      success: function (response) { 
       $(response).hide().prependTo('.messages').fadeIn(2000); 
      } 
     }); 

    } else { 
     var first_idea = $('.ideas > div.message_wrapper:first').attr('id'); 
     $.ajax({ 
      type: "POST", 
      url: "/update_comments.php", 
      data: {first_idea: first_idea, pathname: pathname}, 
      success: function (response) { 
       $(response).hide().prependTo('.ideas').fadeIn(2000); 
      } 
     }); 
    } 

}, 20000); 

有什麼想法?我考慮過使用livequery,我在其他地方看到你可以定義哪些jquery方法livequery尋找,所以我把它放在我的代碼$.livequery.registerPlugin('append', 'prepend', 'after', 'before', 'wrap', 'attr', 'removeAttr', 'addClass', 'removeClass', 'toggleClass', 'empty', 'remove', 'appendTo', 'prependTo');但它沒有做任何事情。

回答

0

好吧......我解決了它。

$('.messages').livequery(function() { 
    $(response).hide().prependTo('.messages').fadeIn(2000); 
}); 

通過對success:增加的liveQuery到.messages格,我可以添加淡入效果。