我有一个Web应用程序,每隔5秒(一旦用户处于非活动状态)向本地服务器发送一个get请求,以重新加载当前页面上的数据。
我正在以一种非常简单的方式使用JQuery load()方法:
$('#outer').load('index.php #inner');
Firebug告诉我每个请求在~14-50ms内完成,所以我不认为请求是堆叠的。
我的问题是在大约20-30个请求之后,拉出的数据变得有点'不稳定',这样它就会消失,然后在几毫秒后重新出现。
这种“不稳定”也会每隔几分钟左右进出。
由于我使用load方法纯粹以无缝方式进行页面刷新,是否有任何可以用来减轻浏览器压力的选项?我能以某种方式优化$ .ajax()方法吗?
答案 0 :(得分:0)
实现理想效果的最佳方法是不幸地为你带来更多的工作。
您需要使用$ .ajax jQuery调用从index.php获取数据,并通过XML / JSON发送数据,然后每20-30秒显示一次。数据将在AJAX调用中检索,并用新的HTML替换当前的HTML(如果HTML不同 - 你需要在那里坚持这个检查),因此会更有效/更不稳定。
你也可以使用慢速轮询来达到更好的效果,所以,如果你想使用它。看看这里:http://www.ape-project.org/