我有一个 Web 应用程序,旨在在 iPhone 等台式机和移动设备上运行。它在 iOS 设备上一直运行良好,直到我们最近将其中一台设备升级到 iOS6。现在我们看到了一个奇怪的错误,它似乎只针对 iOS6 上的 Safari。它在 iOS5 Safari 上仍然可以正常工作,在 iOS6 Chrome 上也可以正常工作。
该错误似乎与我们查询服务器以获取更新的方式有关。我们已将 Ajax 调用设置为每 5 秒发生一次。Ajax 调用返回新数据,客户端使用新数据进行更新。我们现在在 Safari/iOS6 中看到的行为是,当上一个调用返回时,调用会立即发生,结果是页面不断刷新和重新绘制,使其无法使用。小微调器也一直在运行,使页面看起来永远不会停止加载。
这是设置它的客户端 JavaScript 代码:
$(document).ready(function(){
getUpdates();
var refresh = 5000;
setInterval("getUpdates()", refresh);
});
function getUpdates() {
$.post("status.jsp", {}, function(status){
// do client-side rendering here
}, "json");
}
这是Safari中的错误吗?我的代码中的错误?有解决方法吗?我的网络应用程序现在在 iPhone 上没用,情况不是很好。谢谢!