2017-05-31 5 views
0

Ich habe einen Workflow dort Ich möchte eine Warnung ausgelöst, wenn der Benutzer versucht, Browser Tab oder Browser selbst zu schließen.beforeunload nur bei bestimmten Gelegenheiten gefeuert

Ich benutze diesen Code dafür:

window.addEventListener("beforeunload", function (e) { 
    var confirmationMessage = "Do you want to leave this site? Changes you made may will not be saved."; 

    (e || window.event).returnValue = confirmationMessage; //Gecko + IE 
    return confirmationMessage;       //Webkit, Safari, Chrome 
}); 

Das Problem ist, dass es bestimmte Schaltfläche ist und wenn Sie darauf drücken Sie sollen die Website ohne Bestätigungen verlassen.

Wie solche Logiken in diesem Fall behandelt werden könnten?

+0

Sie können überprüfen, ob das Ereignis von einem bestimmten Ziel kommt. 'event.target' – Michelangelo

+0

Ich bin mir nicht sicher, ob ein Browser Informationen darüber liefert, ob der Benutzer die Registerkarte schließt oder weg navigiert. Es klingt wie eine Art privater Information, die nicht mit Ihrer Website zusammenhängt. –

Antwort

0

if (e.target ==/fügen Sie Ihre Taste /)

Prüfung für Ziel innerhalb der Handler

+0

Das war eigentlich so einfach. Vielen Dank. – funguy