1

我有一个基本上包含一个大表格的网页,我使用 ajax 每分钟自动创建和填充表格。基本的代码结构是这样的:

$(document).ready(function(){

   setInterval(function(){
        $.ajax({
           //code to call backend, get the data, 
           //create/populate the table, and refresh every minute
        });
   });

}

由于表格很长,我想让它自动向下滚动,暂停几秒钟,继续向下滚动,再次暂停。当它到达终点时,它会向上滚动,暂停......或者一旦它到达终点,从顶部开始并重新开始。在滚动时,我还想将其表头行固定在顶部。

我的问题是:

  1. 是否可以使用一些 jquery 函数或 javascript 来做到这一点?
  2. 这个自动滚动功能会如何干扰 ajax?说它正在向下滚动,是时候刷新 ajax 表了?
4

1 回答 1

2
  1. 是否可以使用一些 jquery 函数或 javascript 来做到这一点?

使用 jQuery/javascript 很容易完成。

  1. 这个自动滚动功能会如何干扰 ajax?说它正在向下滚动,是时候刷新 ajax 表了?

我会把你的代码放在你的 ajax 成功中为滚动设置动画。将滚动动画设置为比 AJAX 间隔更短的时间间隔。

像这样的东西

   setInterval(function(){

        $.ajax({
            type    : "",
            dataType: "",
            url     : "",
            data    : "",
            success    : function(data)
            {
                // create/append data to table

                // animate scroll to bottom of table
                $("#my_table").animate({ scrollTop: $("#my_table").height() }, "slow");
            }
        });

   });

不确定滚动代码是否 100% 正确,但它应该让你开始。

于 2012-07-11T16:43:50.413 回答