Je trouve usualy le code suivant:href = « # » est haute priorité que onclick
<a href="#" onclick="func();return false">click</a>
mais parfois mon navigateur aller en haut de la page? Pourquoi href="#"
est haute priorité que surclic?
Je trouve usualy le code suivant:href = « # » est haute priorité que onclick
<a href="#" onclick="func();return false">click</a>
mais parfois mon navigateur aller en haut de la page? Pourquoi href="#"
est haute priorité que surclic?
Ce n'est pas prioritaire. Les incendies onclick, puis le navigateur suit le lien.
Si vous n'avez pas return false
(notez l'orthographe) ou func
renvoie une erreur (n'atteignant donc pas l'instruction return
), l'événement ne sera pas annulé.
(comme des solutions de repli pour si la JS échoue ou est go désactivé, cependant, un lien vers le haut de la page est vraiment sucky. Progressive enhancement est la voie à suivre.)
Si la seule raison pour laquelle vous voulez avoir une valeur href
est de permettre au curseur de la main, vous pouvez utiliser à la place de style css:
<a style="cursor:pointer;" onclick="func();return false">click</a>
donc, le lien devrait vraiment être un lien, à moins que le javascript fait quelque chose d'autre (par exemple, ouvrir une fenêtre contextuelle puis ignorer le lien). Si ce n'est pas un lien, vous devriez utiliser un autre élément qui convient mieux à son but (un span par exemple). –
S'il ouvre un popup (ce qui ne devrait pas être le cas, puisque les popups sont une expérience utilisateur horrible) alors il devrait toujours être un lien - l'événement devrait simplement annuler l'action par défaut. – Quentin