我的效果是这样的:
在IE8上,页面上每隔10秒要到后台数据库查询数据,并把每条数据更新到页面上,页面数据要滚动循环显示,数据的条数不确定。我的实现方式是:
使用setInterval,定时周期执行一个函数,在函数中通过AJAX调用后台,并返回数据的XML档格式字串。然后用JS解析这个字串,构造要添加到页面的TR,TD元素,然后放到一个table中。问题是:
现在每次调用要耗时约2秒钟,后台消耗大约0.5秒,其他主要消耗在JS解析传回字符串和 构造TR,TD元素并添加到table中。在这两秒中,页面的滚动效果会停顿,而且也不能切换到其他标签页面。请问有什么好方法去掉这种停顿呢?
在IE8上,页面上每隔10秒要到后台数据库查询数据,并把每条数据更新到页面上,页面数据要滚动循环显示,数据的条数不确定。我的实现方式是:
使用setInterval,定时周期执行一个函数,在函数中通过AJAX调用后台,并返回数据的XML档格式字串。然后用JS解析这个字串,构造要添加到页面的TR,TD元素,然后放到一个table中。问题是:
现在每次调用要耗时约2秒钟,后台消耗大约0.5秒,其他主要消耗在JS解析传回字符串和 构造TR,TD元素并添加到table中。在这两秒中,页面的滚动效果会停顿,而且也不能切换到其他标签页面。请问有什么好方法去掉这种停顿呢?
xmlHttp.open( "GET ", url, true);//xmlHttp.open( "GET ", url, false); 同步:提交后等待服务器的响应,接收服务器返回的数据后再执行下面的代码
异步:与上面相反,提交后继续执行下面的代码,而在后台继续监听,服务器响应后有程序做相应处理,异步的操作好处是不必等待服务器而可以继续在客户端做其它事情。
2、页面上的元素操作不要用DOM,建议拼字符串然后放到innerHTML里
http://topic.csdn.net/u/20101219/14/987dd6f0-fe25-4bbe-8f06-5b89cbf3e3f4.html