In my project I need to get the user confirmation alert , when the user want to close the window/tab using X button.
But the window.on('beforeUnload')
also works for hyper link . How can I block this leave page
alert for <a>
tag ?
My JSP will have the
<a href="next.jsp" id="navigate"> click here </a>
My Jquery will have ,
$(document).ready(function(){
$('#navigate').on('click', function() {
stopNavigate(event);
});
});
function stopNavigate(event){
$(window).off('beforeunload', function(){
});
}
$(window).on('beforeunload', function(){
return 'Are you sure you want to leave?';
});
$(window).on('unload', function(){
logout();
});
I don't want the leave message alert
when the user click any links
. I need the leave message alert
only for window close operation.
The beforeunload event is fired when the window, the document and its resources are about to be unloaded. The document is still visible and the event is still cancelable at this point. This event enables a web page to trigger a confirmation dialog asking the user if they really want to leave the page.
The short answer is you can't do this. The onbeforeunload event can only be used to trigger that popup, it can't be used for anything else. Your only options for something like this are to attach an event to every outbound link on your page.
$(document).ready(function () {
$('#navigate').on('mouseenter', stopNavigate)
.on('mouseout', function () {
$(window).on('beforeunload', windowBeforeUnload);
});
});
function stopNavigate(event) {
$(window).off('beforeunload');
}
function windowBeforeUnload() {
return 'Are you sure you want to leave?';
}
$(window).on('beforeunload', windowBeforeUnload);
DEMO
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With