Browser zurück-button klicken Sie mit bestätigen Sie die box
Müssen, erstellen Sie die javascript-confirm-pop-up-Fenster klicken Sie auf der Browser Schaltfläche "zurück". Wenn ich auf zurück button pop-up wird kommen und sagen, "Sie wollen weitermachen ?", wenn klicken Sie Sie auf ja, dann es würde umgeleitet haben Sie zur vorherigen Seite.
Ich habe folgenden code, es funktioniert nicht wie pro die Anforderung.
if(window.history && history.pushState){ //check for history api support
window.addEventListener('load', function(){
//create history states
history.pushState(-1, null); //back state
history.pushState(0, null); //main state
history.pushState(1, null); //forward state
history.go(-1); //start in main state
this.addEventListener('popstate', function(event, state){
//check history state and fire custom events
if(state = event.state){
event = document.createEvent('Event');
event.initEvent(state > 0 ? 'next' : 'previous', true, true);
this.dispatchEvent(event);
var r = confirm("Would you like to save this draft?");
if(r==true) {
//Do nothing
} else {
self.location = document.referrer;
}
//reset state
history.go(-state);
}
}, false);
}, false);
}
Jede Hilfe in dieser wäre das wirklich bemerkenswert.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie dies: es ist einfach und Sie bekommen die totale Kontrolle über die zurück-Taste.
Dies würde Ihnen helfen.
DEMO
Ist es möglich, immer zeigt ein Dialogfeld zur Bestätigung, wenn ein Benutzer versucht, die Seite verlassen. Dazu gehört auch, dass das drücken der zurück-Taste. Vielleicht ist das eine passende quick-fix für Ihr Problem?
http://jsfiddle.net/squarefoo/8SZBN/1/
Die Lösung von Robert Moore verursacht doppelten Ereignisse bei der Aktualisierung der Seite für mich. Vermutlich, da der Staat würde wieder mehrmals Hinzugefügt.
Arbeitete ich rund um es durch hinzufügen von nur Staat, wenn es null ist. Ich auch bereinigen den Hörer, bevor Sie wieder gehen.
MDN hat einen guten read auf den Status verwalten: https://developer.mozilla.org/en-US/docs/Web/API/History_API#The_pushState()_method
Versuchen, Diese,