如何检测可滚动div底部的时间?

时间:2014-08-06 15:43:34

标签: javascript jquery html

我创建了一个在向下滚动时加载数据的网站。每当您点击页面底部时,它会再加载100行。我试图在div中复制它,这样无论你向下滚动多少,标题总是在顶部。

我正在使用JQuery和scrollTop()函数来执行此操作。

这是我的代码,如果它没有检测到div中的滚动条,但是整个窗口都有效。

$(window).scroll(function(){
    if ($(window).scrollTop() == $(document).height() - $(window).height()){
            for(i; i < size+100; i++){
                document.getElementById('myTable').innerHTML += IPAMArray[i];
            }
            size = i;

    }
});

现在我将div更改为:

<div class = "tableDiv" id="myTableDiv" style="height:800px;width:1000px;border:1px solid #ccc; overflow: scroll;"><table id = "myTable"></table></div>

我不知道如何将此行从“document”和“window”更改为正确的div变量:

if ($(window).scrollTop() == $(document).height() - $(window).height()){

以下是我目前使用该行的地方:

if ($("div.tableDiv").scrollTop() == $(document).height() - $("div.tableDiv").height()){

我已经尝试了很多变种,但我完全猜测代码所以它可能需要永远。我更愿意通过它的ID而不是它的类引用这个div,但我刚开始使用类引用,因为大多数示例都是在线的。我已经以各种方式尝试了$(document).getElementById('myTableDiv'),但似乎无法找到解决方案。

1 个答案:

答案 0 :(得分:0)

if ($("#myTableDiv").scrollTop() == $("#myTable").outherHeight() - $("#myTableDiv").height()){
  1. 使用id识别元素
  2. 内部元素的高度是您所需要的($("#myTable").height()
  3. jquery的height()函数不包含边框边距和/或填充,如doc中所述。请改用outherHeight()
  4. OR

    在css

    中制作标题position: fixed