10 ответов:
An
<a>элемент является недопустимым HTML, если он не имеет либоhrefили .если вы хотите, чтобы он правильно отображался как ссылка (т. е. подчеркнутый, указатель руки и т. д.), то он будет делать это только в том случае, если у него есть
в основном вместо использования ссылки для перемещения страниц( или якорей), используя этот метод запускает функцию(ы) javascript
<script> function doSomething() { alert("hello") } </script> <a href="javascript:doSomething();">click me</a>щелчок по ссылке вызовет оповещение.
есть несколько механизмов, чтобы избежать ссылки, чтобы добраться до места назначения. Один из вопросов не очень интуитивно понятен.
более чистый вариант использовать
href="#no"здесь#no- это неопределенный якорь в документе.вы можете использовать более семантическое имя, такое как #disable или #action, чтобы повысить читаемость.
преимущества такого подхода:
- избегает" двигать к верхнему " влиянию пустого href="#"
- избегает использования javascript
недостатки:
- вы должны быть уверены, что имя якоря не используется в документе.
С
<a>элемент не действует как ссылка, лучший вариант в этих случаях не использует<a>элемент, а<div>и обеспечить желаемый стиль, подобный ссылке.
<a href="javascript:alert('Hello');"></a>- это просто сокращенная запись:
<a href="" onclick="alert('Hello'); return false;"></a>
см. это:
<a href="Http://WWW.stackoverflow.com">Link to the website opened in different tab</a> <a href="#MyDive">Link to the div in the page(look at the chaneged url)</a> <a href="javascript:;">Nothing happens if there is no javaScript to render</a>
это способ заставить ссылку делать абсолютно ничего при нажатии (если только события Javascript не привязаны к ней).
Это способ запуска Javascript вместо перехода по ссылке:
<a href="Javascript: doStuff();">link</a>когда на самом деле нет javascript для запуска (как в вашем примере), он ничего не делает.
старый поток, но я подумал, что я просто добавлю, что разработчики используют эту конструкцию не для создания мертвой ссылки, а потому, что URL-адреса javascript по какой-то причине не передают ссылки на активный элемент html правильно.
например
handler_function(this.id)работает в качествеonClickно не как URL javascript.
поэтому его используют для записи JS-кодов внутри
hrefвместо прослушивателей событий, таких какonclickи избегая#ссылкиhrefиaтеги действительны для html.у меня было исследование о том, как использовать
javascript:внутри
лучший способ всегда правильно отображать ссылку - это использовать css следующим образом:
a {cursor: pointer !important}следует избегать следовать ненужным вещам, как указано в потоке.
Comments