Poniżej przedstawiono dwie metody budowania łącza, którego jedynym celem jest uruchomienie kodu JavaScript. Co jest lepsze pod względem funkcjonalności, szybkości ładowania strony, celów sprawdzania poprawności itp.?
function myJsFunc() {
alert("myJsFunc");
}
<a href="#" onclick="myJsFunc();">Run JavaScript Code</a>
lub
function myJsFunc() {
alert("myJsFunc");
}
<a href="javascript:void(0)" onclick="myJsFunc();">Run JavaScript Code</a>
myJsFunc()ma wartość zwracaną, twoja strona się zepsuje . jsfiddle.net/jAd9G ci, że nadal trzeba używać voidtak: <a href="javascript:void myJsFunc();">. Ale zachowanie nadal by się różniło. Wywołanie łącza za pomocą menu kontekstowego nie wyzwala clickzdarzenia.
<a href="javascript:;" onclick="myEvent()"?
javascript:;jest o wiele szybszy do pisania niżjavascript:void(0)
<a>tagu, jeśli NIE chcesz otworzyć innej strony za pomocą natywnej funkcji przeglądarki, ale raczej uruchomić pewne„ działanie ”javascript? Wystarczy użyć spantagu z klasą js-triggerprawdopodobnie znacznie lepiej ". A może coś mi brakuje?
<a href="javascript:void(0)" onclick="myJsFunc();">ma absolutnie żadnego sensu. Jeśli musisz użyćjavascript:protokołu psuedo, nie potrzebujesz również tegoonclickatrybutu.<a href="javascript:myJsFunc();">zrobi dobrze.