2017-02-26 88 views
0

因此,我目前正在開發一個項目,用戶可以發送消息並將其顯示在屏幕上(如消息框)。最新的一個是在div(#MESSAGES)的底部,爲了讓我更容易看到我會有JS自動向下滾動div。如何使div自動滾動下來,但仍然允許向上滾動

setInterval(function(){ 
$("#MESSAGES").scrollTop($("#MESSAGES")[0].scrollHeight); 
}, 800); 

向下滾動工作完美,直到用戶想要向上滾動並查看以前的消息。這段代碼會保持滾動div而不讓用戶閱讀它。

問:除非用戶滾動查看以前的消息,否則有沒有辦法讓div在每次發送新消息時向下滾動?

謝謝!

+0

是,從區間除去給定的代碼,這似乎($(「#MESSAGES」))。scrollTop($(「#MESSAGES」)[0])這個代碼是這樣的: '$('mySubmitMsgBtn')。 ('#消息「); })' – Todd

+0

run'$(」#MESSAGES「)。scrollTop($(」#MESSAGES「)[0] .scrollHeight);'只有當消息到達 – Sojtin

回答

0
  1. 計算div的內部高度

    $( '滾動 ')丙(' scrollHeight屬性');

  2. 滾動滾動條到希望的值

    $( '滾動。')scrollTop的(200)。

  3. jQuery代碼

    $(文件)。就緒(函數(){ $()scrollTop的($()丙( 'scrollHeight屬性 '))' 滾動。 '' 滾動';。 });

  4. HTML代碼

    DIV類= 「滾動」 式= 「高度:200像素;溢出-γ:滾動」 ..