Frage

Zur Zeit viele der auf unseren Seiten Links zu bekommen verändert auf Pageload href="javascript:void(0);", aber wenn Sie ungeduldig sind (wie die meisten Benutzer sind) Sie über die Links vor dem Laden der Seite und landen auf dem clunkier, nicht-javascript klicken können, nicht -ajax Seiten.

Ich denke über progressive Verbesserung in diesen Tagen viel, und ich sage voraus, die Mehrheit unserer Nutzer Javascript aktiviert haben (noch keine Daten, wir havn't noch gestartet alpha)

Ist es eine schlechte Idee, einige der Indikator zu erzeugen, dass ein Benutzer Javascript für die Sitzung aktiviert hat, und dann Seiten dienen, die Javascript übernehmen? (Dh. Haben die Server setzen href="javascript:void(0);" von Anfang an)

War es hilfreich?

Lösung

Warum dies nicht nur tun?

<a href="oldversion.htm" onclick="...something useful......; return false;">link</a>

return false teilt den Browser nicht in der href auf die URL weiter zu machen.

Jetzt js Besucher erhalten Phantasie js und nicht-js Benutzer zurückgreifen still; und es besteht keine Notwendigkeit für Links auf Pageload zu ändern.

Andere Tipps

Sie tun Sie Ihre progressive Erweiterung auf Last? Sie könnten versuchen, es zu (eine Cross-Browser-Version) domready zu bewegen.

Könnten Sie das nicht delegieren das Dokument, Ihre HTML sauber zu halten?

Zum Beispiel in jQuery:

$( document )
    .click( function(){ return false })
    .ready( function(){ $( this ).unbind( "click" ) } )
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top