I wanted to make a function that asks you if you really wanna leave the page when you try to leave, but where ever I press on my page it asks me this instead only when I try to leave, how do I fix it
The code:
document.addEventListener("DOMContentLoaded", function () {
//Dialog
document.addEventListener("click", function leave(){
if(confirm("You sure you wanna leave this page?")){}
else{
alert("Staying on page"+ " " + document.title +".");
event.preventDefault();
}
});
You can use this code instead :-
window.onbeforeunload = function(e) {
return "Do you want to exit this page?";
};
Note :- This would not work until the user interact with the web page
You are binding the leave function to the click event, you should bind it to beforeunload event.
Fixed code:
document.addEventListener("DOMContentLoaded", function() {
//Dialog
document.addEventListener("beforeunload", function leave(event) {
if (confirm("You sure you wanna leave this page?")) {} // do nothing
else {
alert("Staying on page" + " " + document.title + ".");
event.preventDefault();
}
});
});