AJAX长轮询不适用于IE
我似乎遇到了长轮询和IE的问题。 这是我第一次涉足长期投票,因此我设置了一个简单的测试,看看我是否可以使它工作。 它似乎与FF和Chrome表现得很好,但我在IE上得到了不同的结果。
首先,这里有一些代码:
HTML / JavaScript的:
Untitled Document //<![CDATA[ $(document).ready(function() { (function poll() { $.ajax({ url: 'events/alert-data.php', success: function (e) { $('#results').append($('Success: ' + e.text + '').fadeIn(1000)); }, error: function (e) { console.log(e); }, dataType: 'json', complete: poll, timeout: 10000 }); })(); }); //]]> hello
PHP:
<?php $time = time(); while (time() - $time time())); ?>
在FF / Chrome中,我看到了预期的数据:
hello Success: 1356104196 Success: 1356104201 Success: 1356104217 Success: 1356104222 Success: 1356104227
但在IE中它无限重复第一个Success
系列。 至少我认为它是无限的,因为它锁定浏览器并且不允许我滚动。
我不确定我做错了什么。 任何帮助将非常感激。
提前致谢。
IE的问题似乎是缓存的结果,可能是IE本身。 这可能发生在任何浏览器中。
尝试添加:
cache: false
到ajax选项。