【发布时间】:2021-08-25 09:00:03
【问题描述】:
我正在尝试创建一个自定义的“加载”动画,该动画应该在下一页开始加载时开始。在实践中,我希望在浏览器开始加载下一个顶层框架时收到一个事件,无论加载事件的来源是按钮单击、链接激活还是 JavaScript 设置window.location.href。此外,我希望在加载开始时接收事件,而不是在下一页准备好切换到当前页面时接收。
我希望代码是这样的
window.document.addEventListener("???????", function (e) { ... });
谁能指出正确的活动名称?
【问题讨论】:
-
您的设置方式一目了然。
beforeunload会在你退出当前文档之前触发,之后window对象和它的document将被破坏,所以加载事件监听器必须在新的window/@987654328 中设置@。或者您使用 History API 并以编程方式获取和替换页面内容。 -
我不同意文档将在“beforeunload”事件“之后”被破坏。如果我添加例如服务器响应延迟 5 秒,单击链接时我会立即收到“beforeunload”,但是当服务器实际发送响应时,页面将在 5 秒延迟后切换到下一个(我测试了 Firefox 和 Google Chrome)。但是,我找不到任何实际指定这一点的规范,因此可以定义实现时间。不过,我在 Firefox 和 Chrome 中看到的带有“beforeunload”的行为是我正在寻找的行为。
标签: javascript html