Я бачив наступні методи розміщення коду JavaScript у <a>
тезі:
function DoSomething() { ... return false; }
<a href="javascript:;" onClick="return DoSomething();">link</a>
<a href="javascript:DoSomething();">link</a>
<a href="javascript:void(0);" onClick="return DoSomething();">link</a>
<a href="#" onClick="return DoSomething();">link</a>
Я розумію ідею спроби встановити дійсну URL-адресу замість просто коду JavaScript, на випадок, якщо у користувача не ввімкнено JavaScript. Але для цілей цього обговорення мені потрібно припустити, що JavaScript увімкнено (вони не можуть увійти без нього).
Мені особисто подобається варіант 2, оскільки він дозволяє побачити, що буде запущено - особливо корисно при налагодженні, де параметри передаються функції. Я використовував його досить багато і не знайшов проблем із браузером.
Я читав, що люди рекомендують 4, тому що це дає користувачеві реальне посилання для переходу, але насправді, # не є "реальним". Це піде абсолютно нікуди.
Чи є такий, який не підтримує або насправді поганий, коли ви знаєте, що у користувача ввімкнено JavaScript?
Пов’язане запитання: Href для посилань на JavaScript: “#” чи “javascript: void (0)”? .