progressive enhancement sul lato server?
-
23-08-2019 - |
Domanda
Al momento molti dei link sulle nostre pagine per ottenere cambiato href="javascript:void(0);"
su pageload, ma se siete impazienti (come la maggior parte degli utenti di Internet sono) è possibile fare clic sui link prima che la pagina viene caricata e atterrare sulla clunkier, non javascript, non pagine -ajax.
Sto pensando di progressive enhancement molto in questi giorni, e mi prevedere la maggior parte dei nostri utenti avranno javascript abilitato (ancora non ci sono dati, abbiamo havn't alpha ancora lanciato)
E 'una cattiva idea per generare qualche indicatore che un utente ha javascript abilitato per la sessione, e poi servire le pagine che assumono javascript? (Es. Hanno il server messo href="javascript:void(0);"
dall'inizio)
Soluzione
Perché non farlo?
<a href="oldversion.htm" onclick="...something useful......; return false;">link</a>
return false
dice al browser di non proseguire per l'URL nella href.
Ora i visitatori js js ottenere fantasia, e gli utenti non-JS ripiegare in silenzio; e non v'è alcuna necessità di cambiare i collegamenti su pageload.
Altri suggerimenti
Fate il vostro progressive enhancement in carico? Si potrebbe provare a spostarlo (una versione cross-browser di) domready.
Non potreste delegare questo al documento, per mantenere il codice HTML pulito?
Per esempio, in jQuery:
$( document )
.click( function(){ return false })
.ready( function(){ $( this ).unbind( "click" ) } )