2012-04-27 122 views
2

所以我目前使用this solution通過編寫類似如何在將div添加到div後將div移動到底部?

$(document).ready(function() { 
    $('#comment_list').scrollTop($('#comment_list').scrollHeight) 
} 

滾動一個div的底部,但我注意到,當我嘗試.append()東西#comment_list然後執行上面的代碼。它實際上並沒有滾動到底部(也許.scrollHeight是一個靜態值?)。

例如,這是不行的

$('#comment_list').append('<div>something</div>').scrollTop($('#comment_list').scrollHeight) 

無論是將這個

$('#comment_list').append('<div>something</div>') 
$('#comment_list').scrollTop($('#comment_list').scrollHeight) 

我是否需要使用其他的一些 「貓膩」 還是什麼?

歡迎提供任何提示和建議。提前致謝!

+2

你試過$( 「#comment_list」)scrollTo(」。 100%');? – SuitedSloth 2012-04-27 15:41:20

回答

3

這應該做的伎倆:

$('#comment_list').append('<div>something</div>'); 
$('#comment_list').scrollTo('100%'); 

檢查this jsFiddle樣品。

Source

+0

如何下載'scrollTo'? jQuery插件網站有點令人困惑。我得到[here](http://archive.plugins.jquery.com/node/8283),但我沒有看到任何下載鏈接。我也看了[演示](http://demos.flesler.com/jquery/scrollTo/),但我沒有看到任何下載鏈接... – hobbes3 2012-04-28 22:53:35

+0

我相信這是一個DOM功能.. jsFiddle示例沒有使用任何插件。 – SuitedSloth 2012-04-30 00:24:46

+1

它不是DOM的一部分。我實際上找到了最新版本1.4.2 [here](http://flesler-plugins.googlecode.com/files/jquery.scrollTo-1.4.2-min.js)。 – hobbes3 2012-04-30 08:03:20

0

scrollTop函數調用上$(document).ready()事件。

將內容追加到客戶端的DIV時,未觸發此事件。

所以,你追加內容後,您需要再次致電scrollTop正確設置:

$('#comment_list').append('<div>something</div>'); 
$('#comment_list').scrollTop('100%'); 

HTH