在卸载之前没有按预期工作

时间:2016-02-08 10:49:31

标签: javascript frontend onbeforeunload

这是我的问题,当用户试图从页面中退出时,我需要触发一个带有号召性用语的模态,我知道如果你在卸载事件之前使用,你必须显示一个警告,从函数返回文本字符串,没关系。 但 无论我做什么,我总是在我的模态之前得到警报,并且只有当用户同意从内置浏览器警报停留在页面上时才会收到警报。

我在一个网站上看到,一些前面的天才设法在警报显示之前打开一个html模式,所以你可以看到模态已存在。

这是我正在使用的代码:

$(window).bind('beforeunload', function() {
    _('#beforeunload').foundation('reveal', 'open');
    return 'You still have one item in your basket!';
 })

如何在浏览器提示用户是否离开页面之前触发我的基础模式?

1 个答案:

答案 0 :(得分:1)

尝试;

window.onbeforeunload = function(e) {
  return 'Dialog text here.';
};

https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onbeforeunload#Example