Personne ne sait comment arrêter une page de rechargement ou de naviguer à l'extérieur?
jQuery(function($) {
/* global on unload notification */
warning = true;
if(warning) {
$(window).bind("unload", function() {
if (confirm("Do you want to leave this page") == true) {
//they pressed OK
alert('ok');
} else {
// they pressed Cancel
alert('cancel');
return false;
}
});
}
});
Je suis en train de travailler sur un site de e-commerce à l'heure actuelle, la page qui affiche vos futures commandes a la capacité de modifier la quantité des articles commandés à l'aide touches+/ -. La modification de la quantité de cette façon, cela ne change en fait l'ordre lui-même, ils doivent appuyer sur confirmer, et donc de commettre une action positive pour changer l'ordre.
Toutefois, si ils ont changé les quantités et naviguez à partir de la page je voudrais avertir qu'ils le font dans le cas où il s'agit d'un accident, de l'évolution des quantités seront perdues si elles naviguer loin ou actualisez la page.
Dans le code ci-dessus, je suis en utilisant une variable globale qui sera false par défaut (de son vrai uniquement pour les tests), lorsque la quantité est changé, je mettrai à jour cette variable pour être vrai, et quand ils confirmer les modifications, je vais le mettre à false.
Si l'avertissement est vraie et que la page est déchargé, je lui offre une boîte de confirmation, si ils le disent pas qu'ils aimeraient rester sur cette page, j'ai besoin d'arrêter de déchargement. return false n'est pas de travail, il continue permet à l'utilisateur de naviguer loin (les alertes sont là uniquement pour le débogage)
Des idées?