【问题标题】:Any Javascript event occurring when user clicks Stop load button?用户单击停止加载按钮时发生的任何 Javascript 事件?
【发布时间】:2021-06-04 17:00:35
【问题描述】:

我想在用户点击 Stop Load 按钮(在大多数浏览器中为红色 X)或点击 Esc 时运行一些 Javascript键盘,通常也是如此。

我在这里看到了有关 Esc 按钮的问题,方法是挂钩到 document.body.onkeyup,但找不到任何涉及鼠标单击 Stop 按钮的问题。 p>

【问题讨论】:

    标签: javascript dom-events


    【解决方案1】:

    Internet Explorer 有一个被触发的document.onstop 事件,但其他浏览器似乎不支持该事件。请注意,当用户单击 Stop 或按 Esc 时,或者用户在页面加载期间导航到另一个页面时会触发它,这具有相同的效果。

    我认为在其他浏览器中单击停止时没有可靠的方法来触发事件。也许可以做类似的事情:保持与服务器的连接打开(如Comet 方法),在连接中流式传输某种保持活动状态,并检测流是否结束(我认为它会如果单击了“停止”按钮)。

    【讨论】:

    • 谢谢。对于我的具体情况,我只需要支持 IE,所以 onstop 应该可以解决问题。
    • 在进一步测试之后,onstop 似乎并不是我所需要的。当您离开您的页面时,它也会触发,并且只会触发一次。因此,如果序列类似于 1. 导航离开,2. 取消导航,onstop 仅在第一个事件上触发 - 与我的需要相反。
    • 当您离开时,会取消您所在页面的加载。如果您然后单击停止,这将取消新页面的加载。我希望会触发两个 onstop 事件,但针对不同的文档。
    • 是的,你可能是对的。即使该新页面尚未完成加载。我想我会重新考虑我正在尝试做的事情的整个概念,避免对这个事件的需要。
    【解决方案2】:

    如果页面上仍在加载图像,您可以使用onabort 事件来监控停止加载

    监控鼠标点击应该是不可能的,因为它不会发生在当前浏览窗口内部

    【讨论】:

      【解决方案3】:

      没有任何跨浏览器的方式可以做到这一点。

      然而,IE 有一个特殊的事件,onstop,当按下停止按钮时会在body 上发生。您无法覆盖停止按钮功能(即无法取消它),但您可以检测到它已在 IE 中发生。

      【讨论】:

        猜你喜欢
        • 2022-08-18
        • 1970-01-01
        • 1970-01-01
        • 2014-05-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-10-30
        • 2022-11-21
        相关资源
        最近更新 更多