Sau đây là hai phương pháp xây dựng liên kết có mục đích duy nhất là chạy mã JavaScript. Cái nào tốt hơn, về chức năng, tốc độ tải trang, mục đích xác nhận, v.v.?
function myJsFunc() {
alert("myJsFunc");
}
<a href="#" onclick="myJsFunc();">Run JavaScript Code</a>
hoặc là
function myJsFunc() {
alert("myJsFunc");
}
<a href="javascript:void(0)" onclick="myJsFunc();">Run JavaScript Code</a>
myJsFunc()
có giá trị trả về, trang của bạn sẽ bị hỏng . jsfiddle.net/jAd9G Bạn vẫn phải sử dụng void
như vậy : <a href="javascript:void myJsFunc();">
. Nhưng sau đó, hành vi vẫn sẽ khác. Gọi liên kết qua menu ngữ cảnh không kích hoạt click
sự kiện.
<a href="javascript:;" onclick="myEvent()"
?
javascript:;
gõ nhanh hơn rất nhiều so vớijavascript:void(0)
<a>
thẻ nếu điều bạn muốn làm là KHÔNG mở một trang khác thông qua tính năng trình duyệt gốc mà chỉ có một số 'hành động' javascript được kích hoạt? Chỉ cần sử dụng span
thẻ với một lớp js-trigger
có lẽ sẽ tốt hơn nhiều ". Hay tôi đang thiếu một cái gì đó?
<a href="javascript:void(0)" onclick="myJsFunc();">
hoàn toàn không có ý nghĩa. Nếu bạn phải sử dụngjavascript:
giao thức psuedo, bạn cũng không cầnonclick
thuộc tính.<a href="javascript:myJsFunc();">
sẽ làm tốt thôi