JS:实现自定义'你确定要离开这个页'模态对话框

时间:2012-11-22 09:39:25

标签: javascript html5 modal-dialog

我知道这可能是之前讨论过的,但我想知道Facebook如何成功地实现这一功能 - 在https://www.facebook.com/messages/new中: 在撰写邮件然后尝试按下浏览器中的“后退”按钮时,我会获得Facebook自己的自定义对话框,该对话框会验证我是否真的要离开页面。

我知道我可以使用beforeunload事件来显示原生对话框,但如何创建自己的自定义对话框,如Facebook的。

我认为一种方法可能是使用jQuery并在整个链接集上运行一个事件。

但它如何适用于其他一切(例如浏览器中的“后退”按钮)。

我认为它可能与pushState控件有关,或者facebook可能使用了一些客户端框架,而当按下'Back'时我实际上并没有卸载窗口。

无论如何,很乐意获得有关此问题的一些信息。

1 个答案:

答案 0 :(得分:0)

它只是HTML,CSS和JS。在撰写邮件(实际上只是表单)的情况下,设置您的beforeunload事件并检查是否已填写任何表单字段。如果是,请显示您的自定义html。也许这可以帮助您入门:http://jsbin.com/ronuyo/1/