有没有办法通过 JavaScript 检测是否正在加载新页面。让我举个例子。
在我打开此链接后正在加载另一个页面:
<a href='http://google.com/'>Click here</a>
点击这里后没有页面加载:
<a href='#anchor'>Click here</a>
这里也没有页面加载:
<a href='javascript:void(0);'>Click here</a>
是的,那是页面加载。但是 href
属性不是正在加载的页面的 URL:
<a href='javascript:void(document.location="http://google.com/");'>Click here</a>
这在 href 中有 URL,但不会加载页面。 onclick
属性在这里只是为了说明问题。在现实世界中,onclick 事件可能由事件监听器附加并由代码中其他地方的 event.preventDefault()
取消:
<a href='http://google.com/' onclick='return false;'>Click here</a>
现在想象一下,下一页需要很长时间才能加载。我需要的是一种在单击链接后检测是否正在加载新页面的方法。或者在表单提交之后。或者在可能导致页面加载的任何操作之后。我知道要观察哪些操作,但我不确定它们是否一定会触发页面加载。
有可能吗?如果是,怎么办?
谢谢。
最佳答案
beforeunload
事件可能是你正在寻找的。例如,此类事件处理程序通常用于通过显示带有自定义文本消息的确认对话框来防止用户意外离开已填写表单的页面。
关于javascript - 检测是否正在加载新页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22224581/