假设我们有网站,每秒钟检查一次是否有任何新消息:
$(function(){
setInterval(function(){
$.ajax({
url: 'message_check.php',
success: function(data){
if(data)$('#someDiv').html('NEW MESSAGE!');
}
});
},1000);
});
现在有人用我网站的不同页面打开了 3 个标签。
我每秒会接到多少个电话,三个还是一个?
如果有,那么如何制表符 sinc?
如果三个那么我们失去了非常非常多的表现,对吧?
注意到Firebug为同一站点的不同页面显示相同的控制台。这意味着在我的情况下, FireFox(我也希望其他浏览器)理解它的同一个站点并且可以避免多次调用。
我考虑将结果保存到 cookie 中,并且只有在它不是“新鲜”的情况下才进行调用,但不想重新发明轮子。