Мне нужна ссылка, которая ничего не делает. Я не хочу этого:
<a href="#">
потому что тогда URL-адрес становится something.com/whatever/#
.
Единственная причина, по которой мне нужна ссылка, - это чтобы пользователь мог видеть, что он может щелкнуть текст. JavaScript используется для выполнения некоторых действий, поэтому мне не нужно никуда идти по ссылке, но мне нужно, чтобы она выглядела как ссылка!
Я мог бы использовать какой-нибудь атрибут данных и сказать мне CSS, чтобы элементы выглядели как ссылки, если у них есть этот атрибут, но это кажется немного излишним.
something.com/whatever/#
?pointer
в своем CSSОтветы:
Следующее предотвратит запуск вашего href
<a href="#" onclick="return false;">
Если вы используете jQuery,
event.preventDefault()
можно использоватьисточник
Попробуй это:
<a href="javascript:void(0);">link</a>
источник
javascript:void
иjavascript:void(0)
?javascript:void()
будет SyntaxError, ноjavascript:void
просто вернет undefined - так же, какvoid(0)
. Адам, насколько я могу судить,void
иvoid(0)
функционально эквивалентны для такого использования. --- изменить: хотя я вижу другие комментарии, которые намекают, что страница может быть перезагружена ..В HTML5 это очень просто. Просто опустите
href
атрибут.<a>Do Nothing</a>
Из MDN в атрибуте href тега :
А как насчет курсора в виде руки при наведении?
Стили по умолчанию для браузера могут не заменять курсор на указатель, для
a
тегов безhref
. Вы можете универсально изменить это с помощью следующего CSS.a { cursor: pointer; }
<a>Do Nothing</a>
Однако, вероятно, лучше быть более избирательным и применять его только к тем элементам, к которым вы собираетесь добавить обработчики событий.
Как насчет того, чтобы сделать его ориентированным на вкладки?
Просто добавь
tabindex="0"
к элементу.<a tabindex="0">Do Nothing</a>
Есть ли смысл использовать
a
тег без ссылки?Обычно нет, вероятно, лучше использовать
button
вместо этого элемент и стилизовать его с помощью CSS. Но что бы вы ни использовали, избегайте использования произвольных элементов, например,div
когда это возможно, поскольку это вообще не семантически.источник
Не делайте это ссылкой (хотя это предпочтительнее), а стилизуйте ее с помощью CSS, чтобы она выглядела как ссылка:
p.not-a-link { text-decoration: underline; cursor: pointer }
Или еще лучше просто сделайте это ссылкой и позвольте функции javascript, которая используется
e.preventDefault()
для предотвращения ссылки.Также добавьте ссылку в,
href
чтобы пользователи без включенного JS могли ее использовать (в качестве запасного варианта).источник
<a href="javascript:;">Link text</a>
- вот что я обычно используюисточник
void(0)
, потому что оно отображается в строке состояния. Я говорю это, потому что пользователи отмечают это как ошибку / ошибку (что, очевидно, не так), поэтому я думаю, что это их сбивает с толку.Мы можем добиться этого с помощью javascript void, который обычно включает оценку выражения и возврат undefined, что включает добавление
javascript:void(0);
в href.Оператор void обычно используется только для получения неопределенного примитивного значения, обычно с использованием «void (0)» (что эквивалентно «void 0»). В этих случаях вместо нее можно использовать глобальную переменную undefined (при условии, что ей не присвоено значение, отличное от значения по умолчанию).
a { text-decoration: initial; }
<a href="javascript:void(0);"> This link actually does nothing when clicked</a>
источник
Ответ @ Curt будет работать, но вы можете использовать стиль курсора в css, чтобы он выглядел как ссылка, не беспокоясь о создании поддельной ссылки. Используйте руку или указатель в зависимости от соответствия браузеру.
Кроссбраузерный указатель css (из руководства по стилю курсора ):
element { cursor: pointer; cursor: hand; }
источник
0.17%
. Если люди все еще используют эту версию, они не заслуживают просмотра веб-страницодин из способов, о котором никто не упомянул, - это указать href на пустое локальное местоположение файла, например
<a href='\\'>my dead link</a>
Зачем? Если вы используете фреймворк, такой как react или angular, компилятор выдаст некоторые предупреждения, которые могут испортить ваш журнал или консоль. Этот метод также предотвратит неправильное связывание объектов роботами или пауками.
источник
НЕ ИСПОЛЬЗУЙТЕ
<a>
... вместо этого используйте,<span class='style-like-link'>
а затем используйте класс, чтобы стилизовать его, как хотите.источник