Hello,
<a href="javascript:void(0);" onclick=...
<a href="#" onclick=...
Wo liegen die Unterschiede und was ist "besser"?
besser ist IMHO keines, beide sind schlecht. Zum Unterschied:
Variante 1 gaukelt dem Browser vor ein Protokoll namens javascript zu verwenden (das nicht existiert, von den meisten Browsern aber als Hinweis "jetzt kommt JavaScript" akzeptiert wird) und dort 0 und nichtiges auszuführen.
Variante 2 sagt dem Browser "das hier ist ein Link der auf einen Anker "" auf der aktuellen Seite verweist - da dieser Anker höchstwahrscheinlich nicht explizit definiert ist, springt die Anzeige an den Seitenanfang.
Warum ist beides schlecht? Es setzt voraus, dass mittels JavaScript eine wahre Linkfunktionalität hergestellt wird, meist ein Popup o.ä. - die schönere Alternative hierfür wäre etwa:
<a href="meinePopupSeite.html" onclick="open("meinePopupSeite.html" "neuesfenster", ""); return false;">
Durch return false wird dafür gesorgt, dass der href des Ankers nicht mehr zum Zuge kommt, sofern der onclick-Eventhandler tätig wird. Ist allerdings JavaScript aus oder nicht verfügbar, so greift ganz normal der href und der Benutzer sieht die gewünschte Seite im aktuellen Fenster.
MfG
Rouven
-------------------
Vegetarier essen meinem Essen das Essen weg.