2017-08-31 6 views
1

Je dois montrer l'alerte sur le navigateur fermer et actualiser pour une page particulière. Le code ci-dessous fonctionne pour tous les scénarios, mais il échoue dans le scénario ci-dessous. 1. D'abord, faites l'actualisation, puis l'alerte viendra et demandera le rechargement, faites maintenant le rechargement. 2. Maintenant, cliquez sur le bouton Fermer navigateur Problème: - Maintenant alerte ne pas venir en chrome et navigateur Mozilla, en bordure de rafraîchissement, d'alerte vient le temps multiple mon code est le suivant: -Alerte ne pas afficher sur le navigateur fermer après avoir fait recharger le navigateur, le même problème est là dans le site Web de stackoverflow également

window.onbeforeunload = (ev) => { 
    let msg; 
    debugger; 
    if (sessionStorage.getItem('previousPage') === 'employee') { 
     return 'Are you sure you want to navigate away?If you navigate away, your information will not be saved.' 
     ev.preventDefault(); 
    } 
    return msg; 
}; 

S'il vous plaît aidez-moi comment peut Je gère ce scénario?

Répondre

1

Essayez ceci, tout à fait semblable à ceci: Clear localStorage on tab/browser close but not on refresh:

window.onbeforeunload = function (ev) { 
    window.onunload = function() { 
     let msg; 
     debugger; 
     if (sessionStorage.getItem('previousPage') === 'employee') { 
      return 'Are you sure you want to navigate away?If you navigate away, your information will not be saved.' 
      ev.preventDefault(); 
     } 
     return msg; 
    } 
}; 
+0

code ci-dessus ne fonctionne pas, maintenant il ne montrera pas l'alerte. le message de retour devrait être dans le onbeforeunload. – jack123