我的网页包含以下内容:
<div onclick="location.href = 'AnotherPage';">
此页面还使用异步XMLHttpRequests进行某些ajax更新。
我发现当异步XMLHttpRequest正在进行时,单击此div不会加载新页面。如果我先取消我的请求,那么它可以正常工作。这似乎不对,但我找不到任何描述应该发生的文档。
所以问题是:当使用location.href加载新页面时,正在进行的异步XMLHttpRequests会发生什么?
编辑 - 我通过处理window.onbeforeunload并在那里中止我的待处理异步请求来解决这个问题。问题仍然存在,我是否应该这样做?
答案 0 :(得分:0)
您可以查看类似的问题:
Browser waits for ajax call to complete even after abort has been called (jQuery)
我还看到了一些问题,其中在类似情况下出现了浏览器历史记录问题,解决方法是在setTimeout()
调用中将位置更改换行0
延迟。如果要解决这个问题,我会对这个推理感到困惑,但看到效果会很有趣。