我有一个页面,我打开一个“模态窗口”。它实际上只是一个DIV,里面有一个IFRAME,我加载另一个页面。当我想刷新页面时,浏览器弹出一个窗口,上面写着“你确定要离开这个页面吗?重新加载这个页面将导致模态窗口消失。按OK继续,或取消继续当前页面。”
如何生成此消息?浏览器如何确定我有一个模态窗口,因为我没有使用JavaScript中的任何window.open()调用?有没有办法禁用浏览器的这种行为。
答案 0 :(得分:3)
在IFRAME中加载的页面源可能是body.onunload
。
由于模态窗口本质上是一个IFRAME,当你关闭(或刷新)主窗口时,浏览器知道它正在杀死那个IFRAME,因此该IFRAME中的任何body.onunload
都会触发。
答案 1 :(得分:1)
如果您有一个处理onbeforeunload的函数,则会自动生成Firefox消息。
你可以通过在你的处理程序中返回null来禁用它。
答案 2 :(得分:0)
这可能是由于某些脚本修改了所有场外链接以显示此模态窗口,然后返回true ,或返回false 基于您与模态窗口。
如果要删除该行为,可以删除外部链接的所有点击事件。