Ist es möglich, im Popup vor der Deinstallation eine benutzerdefinierte Nachricht anzuzeigen?
P粉478445671
P粉478445671 2023-08-24 09:27:52
0
2
519
<p>Bei Verwendung von <code>window.onbeforeunload</code> (oder <code>$(window).on("beforeunload")</code>) ist es möglich, das Selbst im anzuzeigen Popup-Fenster? Nachricht definieren? < /p> <p>Vielleicht ein kleiner Trick für die gängigen Browser? </p> <p>Wenn ich mir die vorhandenen Antworten anschaue, denke ich, dass in der Vergangenheit so etwas wie <code>confirm</code> oder <code>event.returnValue</code> verwendet wurde waren möglich, aber jetzt scheinen sie nicht mehr zu funktionieren. </p> <p>Wie zeige ich also eine benutzerdefinierte Nachricht im Beforeunload-Popup an? Ist das überhaupt/immer noch möglich? </p>
P粉478445671
P粉478445671

Antworte allen(2)
P粉186904731

不再是了。所有主要浏览器都开始忽略实际消息并只显示自己的消息。

正确。 很久以前,您可以使用confirmalert,最近您可以从onbeforeunload返回一个字符串处理程序并且该字符串将被显示。现在,字符串的内容将被忽略,并将其视为标志。

当使用 jQuery 的 on 时,您确实必须在原始事件上使用 returnValue

$(window).on("beforeunload", function(e) {
    // Your message won't get displayed by modern browsers; the browser's built-in
    // one will be instead. But for older browsers, best to include an actual
    // message instead of just "x" or similar.
    return e.originalEvent.returnValue = "Your message here";
});

或者老式的方式:

window.onbeforeunload = function() {
    return "Your message here"; // Probably won't be shown, see note above
};

这就是你所能做的。

P粉143640496

tl;dr - 在大多数现代浏览器中您无法再设置自定义消息

为了在用户关闭窗口之前设置确认消息,您可以使用

jQuery

$(window).bind("beforeunload",function(event) {
    return "You have some unsaved changes";
});

Javascript

window.onbeforeunload = function() {
    return "Leaving this page will reset the wizard";
};

      重要的是要注意,您不能 确认/警报 内部 beforeunload


以下是使用我有权访问的浏览器的结果:

Chrome:

火狐浏览器:

Safari:

IE:

有关浏览器支持和删除自定义消息的更多信息:

  1. Chrome 在版本 51 中删除了对自定义消息的支持
  2. Opera 在版本 38 中删除了对自定义消息的支持
  3. Firefox 在 44.0 版本中删除了对自定义消息的支持(仍在寻找此信息的来源)
  4. Safari 在版本 9.1 中删除了对自定义消息的支持
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage