实时网站在线人数显示
javascript部分
使用的ajax长轮询 ajax long poll,为了便于使用,我将它封装成了一个jquery插件
(function($){
$.fn.extend({
visitors: function(options){
var defaults = {
script : "visitors/online.php",
timeout : 50000,
};
var options = $.extend(defaults, options);
return this.each(function(){
var holder = $(this);
refresh = function(sleep) {
var sleep = sleep ? sleep : 1000;
setTimeout('update()', sleep);
}
update = function() {
$.ajax({
url : options.script,
type : 'get',
dataType : 'json',
async : true,
cache : false,
timeout : options.timeout,
beforeSend : function() {
},
success : function(data) {
holder.html(data.num);
refresh(1000);
},
error : function() {
refresh(15000);
}
});
}
update();
});
}
});
})(jQuery);
php部分
待续...
哇哦,Comet 技术~~~
不过,这样一直请求下,还是有性能问题~
@fc_lamp
求赐教。