目前我正在聊天网站上工作。聊天框每200毫秒更新一次。加载新消息时,滚动条需要位于底部。我做到了问题是,当用户试图滚动到顶部位置时,滚动条每200毫秒落到底部(因为我设置为每200毫秒加载新消息并将滚动条重新定位到底部。)。所以这就是问题所在。现在我想检查用户是滚动还是已滚动。如果用户在计数开始时已经滚动或滚动,则滚动条将保持原样。如果用户根本没有滚动,也不是他现在滚动,那么每次新消息到达时滚动条都会到达底部位置...
这是我的代码。
<div class="scrollbar" id="style-2" id="scrollBar">
<div id="conversation">
</div>
</div>
<script>
function loadConversation(){
$.get("get-conversation.php?to_hash=00000", function(data, status){
document.getElementById("conversation").innerHTML = data;
///Scrolling to bottom
var container_height = $( "#contain" ).height();
$( "div.scrollbar" ).scrollTop( container_height+1000000000000 );
});
setTimeout(loadConversation,200);
}
loadConversation();`
请帮帮我。这对我来说非常重要......我非常感激。
答案 0 :(得分:0)
这有点粗糙。它使计时器继续运行但仅在用户滚动时停止滚动到底部,并在用户停止滚动时继续。
filter