2011-11-08 6 views
17

Desidero attivare la funzionalità di back del browser tramite un collegamento ipertestuale nel modello di pagina, utilizzando JavaScript (o PHP se possibile). Qualcuno sa come implementarlo?Come attivare l'evento/funzione di back del browser utilizzando JavaScript?

EDIT
Trovato la soluzione utilizzando JavaScript. Here is the link se qualcuno ne ha bisogno.
Ed ecco il codice:

<a href="#" onclick="history.back();return false;">Go back</a> 
+0

Non è possibile utilizzare PHP perché è un linguaggio lato server e il browser è sul lato client. Quindi non avresti accesso alla cronologia del browser. –

+0

È vero ... Ho appena trovato alcuni post sul parametro 'HTTP_REFERRER'. Quindi stava chiedendo se è possibile. Grazie! –

+0

Giusto. Non ci ho pensato. Puoi _could_ echo il contenuto di 'HTTP_REFERER' in un link, ma non è garantito che sia impostato. Ad esempio alcuni software antivirus/firewall rimuovono il referer. O l'utente ha in qualche modo ottenuto sulla tua pagina usando un meta refresh. Alcuni browser rimuovono anche il referer. Ma andare con la funzione 'history.back()' di JavaScript è probabilmente più sicuro. –

risposta

35

history.back() dovrebbe fare il trucco.

window.history.back() documentation at MDN

Per inciso, si tratta di un'esperienza utente male se si esegue questa operazione in modo imprevisto per l'utente. Ad esempio, inserisco un numero di carta di credito non valido e tu mi riprendi una pagina, invece di lasciarmi correggere l'errore.

Quindi, mentre è possibile utilizzare javascript per manipolare lo stack della cronologia, è meglio farlo solo se ha senso nel contesto delle azioni degli utenti correnti.

+0

Grazie Alan! Accettato! –

+0

@RutwickGangurde Grazie, ma non sembra che tu abbia effettivamente accettato la risposta. – Alan

+0

Sì, lo so ... ancora 2 minuti prima che io possa accettare la risposta! –