Tālāk ir aprakstītas divas metodes, kā izveidot saiti, kuras vienīgais mērķis ir palaist JavaScript kodu. Kurš no tiem ir labāks funkcionalitātes, lapas ielādes ātruma, validācijas utt. ziņā?
function myJsFunc() {
alert("myJsFunc");
}
<a href="#" onclick="myJsFunc();">Run JavaScript Code</a>
vai
function myJsFunc() {
alert("myJsFunc");
}
<a href="javascript:void(0)" onclick="myJsFunc();">Run JavaScript Code</a>
'#'
lietotājs atgriezīsies lapas augšpusē, tāpēc parasti izmantoju void(0)
.
javascript:;
arī darbojas tāpat kā javascript:void(0);
Pirmais, ideālā gadījumā ar reālu saiti, lai sekotu, ja lietotājam ir atspējots JavaScript. Tikai pārliecinieties, ka tiek atgriezts false, lai novērstu klikšķa notikuma aktivizēšanos, ja tiek izpildīts JavaScript.
<a href="#" onclick="myJsFunc(); return false;">Link</a>
Ja izmantojat Angular2, šis veids darbojas:
<a [routerLink]="" (click)="passTheSalt()">Click me</a>
.
Skatīt šeit https://stackoverflow.com/a/45465728/2803344