J'ai une exigence très étrange.Détecter si l'utilisateur a cliqué sur le bouton "retour" - Navigateurs mobiles
Exigence dit: sur la page Détail du produit, lorsque l'image du produit est ouvert dans la visionneuse puis en appuyant sur back
bouton navigateur mobile page, voir la fiche produit doit être montré, non page précédente par exemple page produit grille
Alors , j'ai pensé à chercher comment gérer le bouton de retour dans les navigateurs croisés. Certaines solutions ont travaillé dans les navigateurs de bureau, mais aucun travaillé dans Mobile Browsers
J'ai essayé ci-dessous solution:
window.onload = function() {
if (typeof history.pushState === "function") {
history.pushState("jibberish", null, null);
window.onpopstate = function() {
history.pushState('newjibberish', null, null);
// Handle the back (or forward) buttons here
// Will NOT handle refresh, use onbeforeunload for this.
};
}
else {
var ignoreHashChange = true;
window.onhashchange = function() {
if (!ignoreHashChange) {
ignoreHashChange = true;
window.location.hash = Math.random();
// Detect and redirect change here
// Works in older FF and IE9
// * it does mess with your hash symbol (anchor?) pound sign
// delimiter on the end of the URL
}
else {
ignoreHashChange = false;
}
};
}
};
a également essayé ceci:
if (window.history && window.history.pushState) {
$(window).on('popstate', function() {
var hashLocation = location.hash;
var hashSplit = hashLocation.split("#!/");
var hashName = hashSplit[1];
if (hashName !== '') {
var hash = window.location.hash;
if (hash === '') {
alert('Back button was pressed.');
}
}
});
Essayé cela aussi bien
window.onbeforeunload = function (e) {
var e = e || window.event;
var msg = ""
$("#blueimp-gallery").hide();
// For IE and Firefox
if (e) {
e.returnValue = msg;
}
// For Safari/chrome
return msg;
};
Quelles sont les exigences de votre navigateur? history.pushState est disponible dans la plupart des navigateurs mobiles sauf Opera Mini. – SchattenJager
Tous les navigateurs mobiles. Je ne m'intéresse vraiment pas à Opera. Et si vous pensez qu'il est disponible dans tous les navigateurs alors comment puis-je cacher lightbox en appuyant sur le bouton de retour, puis après la fermeture backbox backbox doit se comporter comme un comportement par défaut – Gags