Salve! Come posso disabilitare il tasto back di explore?? :quote:
Salve! Come posso disabilitare il tasto back di explore?? :quote:
credo non si possa fare
trovato sul sito risorse.net
possiamo ugualmente evitare che l'utente torni indietro inserendo una pagina, chiamamola di intermezzo, che rimandi ad un altro documento. Ecco in sequenza un esempio pratico:
a.htm
intermezzo.htm
b.htm
Questa è la history che legge il browser. Da a.htm, invece di arrivare direttamente a b.htm si passa da intermezzo.htm che in automatico, indirizza l'utente a b.htm. In questo modo, se si tentasse di tornare indietro, si arriverebbe a intermezzo.htm che rispedirebbe immediatamente l'utente a b.htm.
Alcuni avranno già capito che se l'utente tornasse indietro di due pagine, potrebbe comunque rientrare in a.htm. Dopo, spiegheremo come evitare anche questo problema.
All'inizio di questa seconda parte di articolo, abbiamo detto che non potevamo agire su a.htm ed infatti non modificheremo in alcun modo questo file.
E' in intermezzo.htm che dobbiamo agire. Al suo interno, inseriamo un setTimeout che reindirizzi l'utente a b.htm. Ecco la sintassi:
<SCRIPT>
setTimeout("location.href='b.htm'",0001)
</SCRIPT>
In questo modo, se da b.htm si cercasse di tornare indietro, ciò non sarebbe possibile.
Dall'esempio, si capirà bene che se l'utente tornasse indietro di due livelli, potrebbe benissimo raggiungere a.htm.
A questo punto, basterebbe inserire un if sul referrer. Se è uguale a b.htm, allora rispedisce l'utente a b.htm, altrimenti visualizza la pagina.
E' importante comunque, inserire come Url referrer, non solo il nome della pagina, ma tutto l'indirizzo, altrimenti salterebbe il sistema.
__________________________________________________ ________________
oppure
primo sistema che proponiamo, è che abbiamo già visto all'interno di Appunti.risorse.net, consiste nell'utilizzo di location.replace().
Invece di collegare una pagina nel classico metodo:
Vai alla pagina 2
Possiamo utilizzare:
Vai alla pagina 2
Clicca qui per vedere un esempio pratico.
Questo espediente, essendo Javascript, può essere richiamato in qualuque sistema:
<> con un evento, onload, onmouseover, ecc.
<> in base al tempo: setTimeout("funzione()",5000)
<> al termine di altre istruzioni:
se Javascript: location.reload("pagina.htm")
se non Javascript, come Asp, Php, Jsp ecc:
<SCRIPT>
location.reload("pagina.htm")
</SCRIPT>
Questo espediente però, prevede la possibilità nella quale noi stessi possiamo agire sulla pagina precedente.
Spero ti possano servire questi articoli
Ciao Ciao
Don't worry be Happy :bubu:
ma invece di utilizzare la pagina a intermezzo e b, non basta mettere a e b e nella A inserire un javascript go forward???
Almeno se gli utenti sono stati in A e poi vanno in B, se cliccano su BACK su IE vengono rimandati direttamente alla pagina B....
... è l'hip hop che sta ingoiando la mia vita dal di dentro!