【问题标题】:How does Gmail create this custom prompt dialog box?Gmail 如何创建此自定义提示对话框?
【发布时间】:2015-01-01 15:37:19
【问题描述】:

有时,当我尝试在打开多个选项卡的情况下关闭 Gmail 时,我会看到一个 JS prompt 函数样式对话框,如下所示:

据我所知,在使用 JS prompt 函数时,无法自定义用于按钮等的文本。
此外,这似乎是一个真正的对话框(与某些 JS 创建的模式相反),因为在您对对话框采取行动之前,您无法与屏幕的其余部分进行交互或拉起元素检查器等。

Gmail 团队如何做到这一点?
他们是否可以访问我们其他人不知道的一些未记录的函数/方法?

谢谢。

【问题讨论】:

    标签: javascript google-chrome modal-dialog gmail


    【解决方案1】:

    您正在寻找window.onbeforeunload。它允许您在用户离开之前向他们发出警告。

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

    请注意,许多浏览器会忽略返回值而只显示默认消息,因为它通常被滥用为显示“等待!以 50% 的价格购买我们的垃圾邮件产品!”在诈骗网站上。

    【讨论】:

    • 非常感谢您提供简单明了的回答。
    猜你喜欢
    • 2010-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-16
    • 2019-11-15
    • 2017-01-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多