Я только что сделал div, который показывает сообщение в фоновом режиме. Это за модальным, но это лучше, чем ничего. Это своего рода теневой, но, по крайней мере, вы можете дать своему пользователю некоторую информацию о том, почему вы беспокоите ее / его не покидать.
constructor($elem)
{
$(window).unbind().bind('beforeunload', (e) => this.beforeUnload(e));
}
beforeUnload(e)
{
$('#leaveWarning').show();
setTimeout(function(){
$('#leaveWarning').hide();
}, 1); // set this to 1ms .. since timers are stopped for this modal,
// the message will disappear right after the user clicked one of the options
return "This message is not relevant in most modern browsers.";
}