0

我正在使用服务器发送事件来运行社交提要并实时更新它。

Javascript代码:

var source = new EventSource('php/stream.php?type=1&encoding=data');
source.onmessage = function(e) {
var data = JSON.parse(e.data);
$.each(data, function(id, object) { 
$('#'+ id).append('<div class="main">'+ object["content"]+'</div><!-- .main -->');
});
};

我的 PHP 发送的内容:

id: 5
data: json object
retry: 3000

问题:脚本运行良好,但 10 秒后 +-。Firefox 似乎失去了连接并且没有插入新数据。在 Safari 和 Chrome 中没有问题。

4

2 回答 2

1

我有这个确切的问题,我发现如果你创建一个局部变量,firefox 中的 eventsource 不能正常工作。对我来说,我删除了var声明源之前的内容,并且它有效。所以$(document).ready(...)只要你不用 a 声明它就可以了var

于 2015-09-08T22:54:28.287 回答
0

我有同样的问题,因为事件源代码在里面

$(document).ready(function () {    
   ...
});

把它拿出来。

于 2013-10-17T13:19:08.637 回答