Posso darti la mia soluzione (che è quella di Christian Heilmann e molti altri): unobtrusive javascript (javascript non invasivo) ed atto solo a migliorare l'esperienza di navigazione.

In pratica javascript NON va utilizzato per assolvere funzioni primarie, ma solo "abbellimenti" (esperienza di navigazione).

Per far ciò bisogna prevedere che il browser l'abbia disattivato di default, scrivere del normale codice (X)HTML funzionante e aggiungere successivamente del javascript non invasivo.

L'esempio più classico è quello dei link che si aprono con uno script:
codice:
link
In questo caso se ho javascript disabilitato la funzione naviga non viene richiamata e il link non ha alcuna utilità.

Come risolvere?

Innanzitutto MAI usare gli eventi inline, ma gestirli tramite manipolazione del DOM in js esterni.
In secondo luogo dare al link un valore alternativo (ad es: href="pagina1.html") che non verrà eseguito se javascript è abiolitato poichè nella funzione che andremo a richiamare avremo l'accortezza di far restituire un "false" all'evento onclick.