Forse questo funzionerà per voi.
<html>
<body onunload="disableBackButton()">
<h1>You should not come back to this page</h1>
</body>
<script>
function disableBackButton()
{
window.history.forward();
}
setTimeout("disableBackButton()", 0);
</script>
</html>
Il codice sopra renderà difficile utilizzare il pulsante Indietro per caricare questa pagina.
secondo tentativo
Il codice qui sotto è stata presa da un altro overflow dello stack.
detect back button click in browser
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;
}
};
}
}
fonte
2013-05-21 16:59:22
tenere traccia di all'ultima pagina visitata, se la pagina corrente reindirizza all'ultima pagina visitata, è probabile che la direzione è indietro. – adeneo
Sarà meglio illustrare con un esempio. saluti –
PushState inserisce un nuovo stato nello stack (uno stato è alcuni dati memorizzati dopo una nuova azione). Non ha alcuna relazione con la schiena e via. Indietro e vai sono le funzioni per navigare negli stati spinti nello stack. Dico questo perché nella tua modifica sembra che tu stia pensando che pushState e go (1) siano equivalenti. –