0
我认为我的问题其实很简单,我认为答案隐藏在某些相关问题的某处。但我无法让我的代码工作,所以这里是我的问题:刷新/更新页面javascript
我需要读取非周期性机会的文件,并对其中的数据做非常好的事情。到目前为止,我一直在做这个“本地”(这个文件稍后将在服务器上)并且它工作得很好。只是为了测试数据是否被正确读取,文件上的更改由我完成,我只需在浏览器中按F5即可获得“新页面”。这一切都很好!
事情是,我需要网页重新加载自己只有当文件被改变。所以我读了文件,检查是否更新!= lastupdate重新加载页面。问题是,如果条件是真或假,页面总是重新加载并不重要!不爽!这是我迄今所做的方法之一:
setInterval(function() {
$.getJSON('object.json', function(data) {
if (data.update != lastUpdate){
lastUpdate = data.update;
window.location.reload();
}
});
}, 2000);
如果文件被更改,然后如果真重载页面后,此功能每2秒检查。但它每2秒重新加载一次,而不是每次更改文件时......有谁能告诉我我做错了什么?
感谢和问候, Julls
感谢您的快速回答,但那不是问题:S我刚刚删除了关于该帖子的一些评论,并随身携带关闭的东西xD ...您有任何其他想法吗? :) – jcaz
如果window.location.reload();然后data.update不能等于lastUpdate。将“data.update!= lastUpdate”替换为“1!= 1”以证明页面不会刷新(如果它们相同),然后在Chrome/safari中使用警报框或javascript控制台或在Firefox中使用firebug查看运行时的data.update和lastUpdate的值。希望这可以帮助。 – Max
嗨,昨天没有看到你的答案对不起。我解决了这个问题。每次页面重新载入lastUpdate时也会刷新,所以lastUpdate = data.update行实际上是无用的!我试着不重新加载页面,而是再次调用读取对象的函数,并实际上对数据做了一些处理。这不起作用,因为不知何故页面失去了它应该有的所有交互。任何想法为什么?或者我可以在文件lastUpdate = update中写入,然后读取这两个东西,如果更新更改,再次写lastupdate = update ...? – jcaz