J'ai vu les méthodes suivantes pour mettre du code JavaScript dans un fichier de type <a>
étiquette :
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>
Je comprends l'idée d'essayer de mettre une URL valide au lieu d'un simple code JavaScript, juste au cas où l'utilisateur n'aurait pas activé JavaScript. Mais pour les besoins de cette discussion, je dois supposer que JavaScript est activé (ils ne peuvent pas se connecter sans).
Personnellement, j'aime l'option 2 car elle vous permet de voir ce qui va être exécuté, ce qui est particulièrement utile pour le débogage lorsque des paramètres sont passés à la fonction. Je l'ai utilisé assez souvent et je n'ai pas rencontré de problèmes de navigation.
J'ai lu que les gens recommandent 4, parce que cela donne à l'utilisateur un vrai lien à suivre, mais vraiment, # n'est pas "réel". Il n'ira absolument nulle part.
Y en a-t-il un qui n'est pas pris en charge ou qui est vraiment mauvais, lorsque vous savez que l'utilisateur a activé JavaScript ?
Question connexe : Href pour les liens JavaScript : "#" ou "javascript:void(0)" ? .
0 votes
Petit problème de syntaxe : Le choix n°2 devrait être - <a href="javascript:DoSomething() ;">lien</a> sans le "return".
0 votes
Veuillez changer la réponse acceptée par la réponse de @eyelidlessness. Je pense que c'est la meilleure approche, car elle se soucie de la sémantique.