Ich habe die folgenden Methoden zum Einfügen von JavaScript-Code in ein <a>
Tag gesehen:
function DoSomething() { ... return false; }
<a href="javascript:;" onClick="return DoSomething();">link</a>
<a href="javascript:DoSomething();">link</a>
<a href="javascript:void(0);" onClick="return DoSomething();">link</a>
<a href="#" onClick="return DoSomething();">link</a>
Ich verstehe die Idee, eine gültige URL anstelle von nur JavaScript-Code einzufügen, nur für den Fall, dass der Benutzer kein JavaScript aktiviert hat. Für diese Diskussion muss ich jedoch davon ausgehen, dass JavaScript aktiviert ist (ohne JavaScript können sie sich nicht anmelden).
Ich persönlich mag Option 2, da Sie sehen können, was ausgeführt werden soll - besonders nützlich beim Debuggen, wenn Parameter an die Funktion übergeben werden. Ich habe es ziemlich oft benutzt und keine Browserprobleme gefunden.
Ich habe gelesen, dass die Leute 4 empfehlen, weil es dem Benutzer einen echten Link gibt, dem er folgen kann, aber wirklich, # ist nicht "echt". Es wird absolut nirgendwo hingehen.
Gibt es eine, die nicht unterstützt wird oder wirklich schlecht ist, wenn Sie wissen, dass der Benutzer JavaScript aktiviert hat?
Verwandte Frage: Href für JavaScript-Links: "#" oder "Javascript: void (0)"? .