intanto se usi "var" in una funzione (anche anonima) agisci su una variabile locale
devi sempre parlare di un "on" inizializzata fuori da funzioni affinche' sia globale

poi per preservarne il valore al cambio pagina ti serve un cookie, puoi usare javascript classico ma dal momento che gia' usi jquery c'e' un comodo plugin per leggere/scrivere cookie

se vuoi usare sessioni lato server dovrai comunque passare il valore da preservare al lato server, quindi potresti, ad ogni cambio di valore, richiamare via ajax uno script lato server che assolva questo compito ma suona come una complicazione inutile

ciao