Voici deux méthodes pour créer un lien dont le seul but est d'exécuter du code JavaScript. Laquelle est la meilleure, en termes de fonctionnalité, de vitesse de chargement des pages, de validation, etc.
function myJsFunc() {
alert("myJsFunc");
}
<a href="#" onclick="myJsFunc();">Run JavaScript Code</a>
ou
function myJsFunc() {
alert("myJsFunc");
}
<a href="javascript:void(0)" onclick="myJsFunc();">Run JavaScript Code</a>
'#'
ramènera l'utilisateur en haut de la page, donc j'utilise habituellement void(0)
.
javascript:;
se comporte également comme javascript:void(0);
.
La première, idéalement avec un vrai lien à suivre au cas où l'utilisateur aurait désactivé JavaScript. Veillez simplement à renvoyer false pour empêcher l'événement de clic de se déclencher si le JavaScript s'exécute.
<a href="#" onclick="myJsFunc(); return false;">Link</a>
Si vous utilisez Angular2, cette méthode fonctionne :
<a [routerLink]="" (click)="passTheSalt()">Cliquez-moi</a>
.