Problema di cache in Safari iOS 5/6

window.onunload = function(){}

Sviluppando una web app responsive mi sono scontrato su di un problema di cache in safari su iOS5/6 che mi ha fatto perdere molto tempo.

In pratica tutte le funzioni javascript che dovevano essere eliminati nel passaggio ad un'altra pagina permanevano nella cache di Safari e puntualmente ricomparivano alla pressione del tasto di navigazione back.

Ho quindi pensato di scaricare le funzioni all'interno di

 

window.onunload = function(){}

 

ma purtroppo ho sperimentato che l'evento onunload non veniva eseguito!

Dopo diverse ore di ricerca e lavoro ho risolto il problema scaricando le funzioni nell'evento

 

window.onpopstate=function ()

L'evento popstate viene infatti eseguito ogni volta che cambia la cronologia di navigazione della finestra attiva. 

Windows: modifica "esterna" del registro di sistema (da una seconda installazione di Windows)

Può essere utile sapere che è possibile modificare i registri di sistema di Windows da un'altra installazione di Windows esguita su di un differente HD.

Ipotizziamo quindi di possedere un primo sistema operativo installato su di un determinato disco rigido. identifichiamo questa installazione con OLD. Colleghiamo tale HD ad un secondo sistema operativo, che per semplicità indichiamo con NEW, installato quindi su di un differente HD.

AL command prompt di NEW eseguiamo i seguenti comandi:

 

reg load hklm\Old_System F:\Windows\System32\Config\System
reg load hklm\Old_Software F:\Windows\System32\Config\Software

 

in cui F: è il nome dell'unità in cui è installato OLD.

Eseguendo quindi il comando regedit al cmd di NEW sarà possibile editare i registri del sistema operativo OLD.

E' poi anche possibile "caricare" le impostazioni personali di un utente presente sul sistema operativo OLD. E' infatti sufficiente eseguire al cmd il seguente comando:

 

reg load hku\Old_User F:\Users\Pippo\ntuser.dat

 

dove Pippo è l'utente presente sul sistema OLD.

Per scaricare tutte le impostazioni di OLD dal sistema NEW, eseguire i seguenti comandi:

 

reg unload hklm\Old_System
reg unload hklm\Old_Software
reg unload hku\Old-User