当最后一行在浏览器中可见时,如何将行附加到表中?

时间:2010-10-26 08:24:47

标签: jquery ajax append

某些网站的表格会在您滚动浏览器时附加行,以便表格的底部可见。

猜猜是这样的:

  1. jQuery检测到表的末尾在浏览器中可见
  2. $.getJSON用于从服务器获取下一行
  3. 附加行。
  4. 问题:

    1. 如何检测到最后一行在浏览器中可见?
    2. 有没有比$('#tableId tbody tr')更好的方法。长度来获取当前的行数?

1 个答案:

答案 0 :(得分:1)

(1)检测最后一行是否可见:

$(window).scroll(function(){
    var $window = $(this),
        $el = $('#tableId tbody tr:last'),

        viewPaneTop = $window.scrollTop(),
        viewPaneBottom = viewPaneTop + $window.height(),

        elementTop = $el.offset().top,
        elementBottom = elementTop + $el.height();

    if ((elementTop >= viewPaneTop) && (elementBottom <= viewPaneBottom)) {
        // add new rows here
    }
});

(2)这是确定行数的正确方法。