【问题标题】:Is there a way to detect browser closing in JApplet?有没有办法检测 JApplet 中的浏览器关闭?
【发布时间】:2011-12-12 15:00:38
【问题描述】:

在关闭浏览器之前,用户应该保存某些配置文件。有没有办法检测用户是否试图关闭浏览器并警告他们首先保存文件?

【问题讨论】:

    标签: java browser japplet


    【解决方案1】:

    您应该在您的小程序中定义一个公共方法,并在用户关闭页面之前使用 Javascript 调用它: window.onbeforeunload = document.YourApplet.YourMethod(event); 其中 YourApplet 是您的小程序的名称属性:<applet name="YourApplet" ... YourMethod 是您在小程序中定义的方法。

    【讨论】:

      【解决方案2】:

      您可以use javascript to detect this。你也可以invoke applet methods from javascript

      所以你应该定义一个 javascript onunload 处理程序来调用你的小程序的关闭方法。

      【讨论】:

      • 非常感谢,我不知道你能做到这一点。
      【解决方案3】:

      通常,一旦浏览器窗口(或只是选项卡)关闭或导航到其他地方,插件将尝试停止小程序。

      IIRC,在插件开始变得中世纪之前,您曾经有 20 秒的时间进行清理。我相信如果没有其他小程序共享 JVM,如果您不停止,该进程现在将被杀死。

      所以,您真的不想四处闲逛,试图显示烦人的保存对话框。我什至会说,你不想要烦人的保存对话框。因此,只需安静地进行保存。重新启动时添加“您没有保存,是否要恢复这些更改”的内容(例如 Chrome 工具栏下方的重新打开窗口对话框)。对于额外的标记,在后台定期记录增量,以便即使在突然终止或网络故障的情况下也可以恢复数据。

      【讨论】:

        猜你喜欢
        • 2022-11-15
        • 1970-01-01
        • 2011-08-11
        • 2021-11-08
        • 2021-10-20
        • 1970-01-01
        相关资源
        最近更新 更多