如果在DIV的底部,JQuery会更新

JQuery update if at bottom of DIV

本文关键字:JQuery 更新 底部 DIV 如果      更新时间:2024-06-13

我有这个函数,它本身工作得很好,但每当我向上滚动时,它就会向下滚动,这不是我想要的。我希望它只在div(溢出)的滚动条在底部时运行函数,这使得它可以向上滚动,而不会向下滚动,从而阻止查看旧消息。

function opdaterPost(til, fra){
        $('#beskeder_vis').load('calls/opdater_post.php?til=' + til + '&fra=' + fra);
        $("#beskeder_vis").animate({ scrollTop: $("#beskeder_vis").prop("scrollHeight") }, 1500);   
}

这是一个显示聊天框的jsfiddlehttp://jsfiddle.net/w989Y/

检查div是否按以下方式滚动到底:

if ($("divID").get(0).scrollHeight - $("divID").scrollTop() == $("divID")outerHeight()) { ... }

看起来你正试图用Facebook股票行情器的工作方式来做这件事。当您滚动到底部时,容器的outerheight加上scrollTop(容器已滚动掉的量),应该会给出总内容高度scrollHeight。所以这样做吧:

$("#divId").scroll(function() {
  if ($(this).scrollTop() + $(this).outerHeight() == this.scrollHeight)  
  {
     ''do stuff;
  }
});