`

截获页面的关闭事件

 
阅读更多

想法来源

icbc的网银中发现,无论通过什么方式关闭网银页面,系统均会发出系统关闭的提示。

 

实现要素与难点

l  onbeforeunload

通过windowonbeforeunload可以截获到页面重新载入的事件,但是页面关闭、页面刷新、页面跳转都会触发此事件,无法确定是否关闭动作。此事件还可以阻止事件的执行。

l  Onunload

此事件触发在onbeforeunload之后。通过windowOnunload可以截获到页面重新载入的事件,但是页面关闭、页面刷新、页面跳转都会触发此事件,无法确定是否关闭动作。而且此事件无法阻止事件的执行。

 

最终实现思路

l  通过集合框架(frameset)将系统运行中需要重新载入的页面和不需要重新载入的页面区分开。

如果系统中的页面都是需要重新载入的,咱们可以自己定义一个不需要重新载入的页面放到frameset中,并将此页面容器frame的高度、宽度均设置为0(即不占用页面空间)。

 

l  禁用页面的整体重新载入。

具体参见 页面右键动作禁用

 

l  在不需要重新载入的页面中添加 onbeforeunloadonunload 事件。

可以在onbeforeunload事件中发出提示让用户确认是关闭页面否为意外事件。

可以在 onunload 事件中调用系统接口释放系统资源(如session)。

 

遗留问题

l  onbeforeunload 事件中的提示信息对话框只能用系统默认的,不能自定义。

分享到:
评论

相关推荐

    ie事件捕获控件 捕获ie浏览器到打开链接等等的事件

    "ie事件捕获控件"是一个专门针对Internet Explorer(IE)浏览器设计的技术解决方案,它允许开发者捕获并处理浏览器的各种事件,例如打开链接、加载页面、关闭窗口等。这种技术的核心在于事件模型,它是JavaScript和...

    仿ios边缘右侧滑动退出当前页面

    此外,为了避免与页面内的其他交互冲突,可能需要对某些子View进行特殊处理,让它们在滑动时不会截获事件。 总之,实现"仿ios边缘右侧滑动退出当前页面"需要深入理解Android的事件分发机制,以及巧妙地利用手势识别...

    IE9双击标签页关闭当前选项卡的工具.docx

    标题中的“IE9双击标签页关闭当前选项卡的工具”指的是一个针对Internet Explorer 9浏览器的增强功能,它允许用户通过双击浏览器的标签页来关闭当前打开的页面,而不是传统的单击右键选择关闭或者使用键盘快捷键。...

    HTML5爆裂式关闭窗口动画登录模板.zip

    6. **事件监听**: JavaScript的事件监听器可以捕捉用户与网页的交互,例如点击关闭按钮。在模板中,可能会有一个事件监听器来触发那个独特的“爆裂”动画。 7. **自定义字体和图标**: HTML5支持`@font-face`规则,...

    Fiddler Everywhere 抓包工具是一个蛮好用的抓包工具,可以将网络传输发送与接受的数据包进行截获、重发、编辑、转存

    Fiddler Everywhere是一个蛮好用的抓包工具,可以将网络传输发送与接受的数据包进行截获、重发、编辑、转存等操作 可以简单理解 fiddler everywhere = fiddler + postman, 这里划一个重点:代理,我们之前学习代理...

    PHP中使用register_shutdown_function函数截获fatal error示例

    如果display_errors设置成off,那用户将会看到的是一个空白的页面。若设置成了on,那fatal error的信息将会呈现出来(当然正常的人都不会这样干)。 那我们有什么方法可以提前截获到fatal error,并用我们自己自定义...

    Windows Server 域网页修改密码 IISadmpwd

    如果需要修改asp页面上所显示的内容, 可以修改该页面的定义. achg.asp 用于执行修改密码请求的页面. aexp.asp 该页面会默认情况下会为iis显示那些密码已经过期的用户. 通过配置iis metabase中的”...

    键盘程序屏幕监视专家.2.1 破解版 超好用

    主要功能有:截获中英文键盘输入,监视程序运行(打开或关闭窗口)情况,定时截屏,并自动发送到指定的邮箱等功能,让您对爱机的使用情况一目了然。此外它还可以根据您的设置禁止打开指定的窗口和程序,禁止运行游戏...

    南开大学2021年9月《网络爬虫与信息提取》作业考核试题及答案参考4.pdf

    7.UI Automator:device.sleep()方法是使用 UI Automator 关闭屏幕的命令。 知识点:UI Automator,device.sleep()方法,屏幕控制。 8.异步加载:不是所有的异步加载都会向后台发送请求。 知识点:异步加载,后台...

    AdminScripts iisadmpwd网页修改AD账号密码必备插件

    如果需要修改asp页面上所显示的内容, 可以修改该页面的定义. achg.asp 用于执行修改密码请求的页面. aexp.asp 该页面会默认情况下会为iis显示那些密码已经过期的用户. 通过配置iis metabase中的”...

    修改注册表堵住资源共享隐患 论文

    设置完成后,重启计算机,系统将在关闭时自动删除页面文件,增加系统安全性。 此外,Windows 2003的Dr. Watson调试工具在应用程序出错时会自动保存调试信息,但这些信息也可能被黑客利用。要阻止Dr. Watson自动保存...

    CEFSharp拦截一切网站的WSS完整代码WinForm

    CEFSharp提供了丰富的API,用于创建自定义的浏览器控件,实现与网页的交互以及对网页内容的控制。在本示例中,我们将探讨如何使用CEFSharp在WinForm应用中拦截并处理WebSocket连接。 WebSocket是一种在客户端和...

    Web认证PAP方式流程

    5. **TCP关闭连接**:与原始服务器的TCP连接被关闭,因为用户现在需要进行认证。 6. **Portal Server与用户设备建立连接**:Portal Server根据重定向地址,与用户的设备建立新的TCP连接。 7. **返回认证页面**:...

    此网站的安全证书有问题.docx

    * 建议关闭此网页,并且不要继续浏览该网站 解决办法有两种: 1. 若有电子证书,可以点击"继续浏览此网站(不推荐)"链接,即可访问网站,然后点击地址栏后面的"证书错误"按钮,打开弹出窗口,点击"查看证书",然后...

    session定义和作用

    Session的核心概念是“会话”,它在用户打开网站并开始浏览网页时被创建,直到用户关闭浏览器或者Session过期。每个Session都与特定的用户相关联,通过SessionID来区分不同的用户。当用户在网站内跳转页面时,...

    .net 刷新页面后弹出重试框的解决方法

    在Web应用开发中,特别是在使用.NET框架构建网页时,用户经常会遇到在关闭模式窗口之后父页面刷新导致弹出重试消息框的问题。这个问题产生的原因与HTTP协议中的GET和POST请求方式有关。 首先,我们来解释一下POST和...

    C#登录界面设计,密码不可见设计

    // 设置关闭眼睛的图片 } } ``` 在这里,`UseSystemPasswordChar`属性用于控制是否使用系统提供的密码字符遮罩。当用户点击"小眼睛"按钮时,图片会切换,表示当前密码是否可见。 为了提高安全性,还可以考虑在...

    A操作程序ILS进近解析PPT教学课件.pptx

    9. **准备着陆**:小桌板收好,自动推力检查,确认处于“SPD”模式或关闭,如果不需要,关闭机翼防冰。最后,确保所有着陆准备工作完成,调定Vapp,准备降落。 此课件详细讲解了ILS进近的每一步操作,强调了不同...

Global site tag (gtag.js) - Google Analytics