javascript - 检测是否正在加载新页面

标签 javascript

有没有办法通过 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/

相关文章:

javascript - 通过输入在 highcharts 中显示多个 csv 文件

javascript - 奇怪的 HTML 5 Canvas 抗锯齿

javascript - 如何知道angular完成了所有的处理和渲染

javascript - 对包含带空格的文本的数组进行排序

javascript - 如何逐步为 6 个盒子制作动画?

Javascript 计算器结果闪烁

javascript 在 html 中显示变量

javascript - 从父级中删除多个子级?

javascript - 如何获取调用表单的按钮

javascript - 是否可以将 javascript 文件导入到 java ScriptEngine