2011-06-15 149 views
2

我正在嘗試使自動滾動爲我的div。每當我檢查那個div的高度時,它會給我「200px」,就像它在CSS中一樣。我認爲這是因爲CSS樣式。 How to fix it獲得元素的高度

這一切的想法是用戶可以提交消息聊天,然後他們會出現在該框中。我需要自動滾動的箱子的底部...

+0

你看,應該是當用戶提交了超過200條短信超過200像素。對? – daGrevis 2011-06-15 07:07:32

回答

2
$('div').prop('scrollHeight'); 

的jQuery 1.6之前,prop應該attr

或正好砸在HTML屬性:

$('div')[0].scrollHeight; 
1

爲什麼不使用jQuery和要麼使用ScrollTo插件,滾動動畫內容,或者使用scrollTop的,只是設置滾動到scrollHeight屬性,像這樣; (「div」)。ScrollTop($(「div」)。ScrollTop());

0

你可能甚至不需要找出div的高度。根據你的目標,你可以將它滾動到最大。嘗試這樣的事情,也增加了新的元素,你的DIV同一函數內部:

<script> 
$('#screameria form').submit(function() { 
    var screams = $('#screameria .screams'); 
    screams.append(
     '<div>' 
     + new Date() 
     + ': ' 
     + $(this.scream).val() 
     + '</div>' 
    ); 
    screams.scrollTop(999999999); 
    return false; 
}); 
</script> 

Here's a jsFiddle with it

+0

我喜歡Patrick Gates的答案。看看已經完成你的目標的插件,而不是試圖推出你自己的。 – justis 2011-06-15 07:13:13

+0

看看我的代碼...我已經使用了height(),但它不起作用。 – daGrevis 2011-06-15 07:14:48

+0

是的,我一開始並沒有注意到jsFiddle。我現在看到你已經在使用'.height()' – justis 2011-06-15 07:23:09