Есть ли какая-то конкретная причина использовать якорные теги для ссылок? - PullRequest
1 голос
/ 17 апреля 2020

Я работаю над сайтом, для которого я хотел бы отслеживать взаимодействие с пользователем. Панель навигации в верхней части страницы имеет несколько ссылок, для каждой из которых я хочу записывать клики.

Каждая из этих ссылок реализована как <span>. Я написал JS для запуска при загрузке страницы, чтобы настроить прослушиватели событий для отслеживания кликов по этим элементам. При щелчке элемента в навигационной панели функция отправляет событие в GA, а затем перенаправляет пользователя на соответствующую страницу.

Альтернативой тому, что я делаю, было бы реализовать эти элементы как <a> тегов и дайте им onclick атрибутов.

Мой вопрос: есть ли какая-то особая причина, по которой мне следует использовать <a> теги для этих элементов вместо <span> s? Мне интересно, потому что тег <a> существует для самой цели перенаправления пользователей на разные страницы, что я и делаю.

Спасибо!

Ответы [ 2 ]

1 голос
/ 17 апреля 2020
  • Обратная совместимость: теги привязки работают даже при отключенном javascript. Кроме того, некоторые браузеры имеют режим «чтения», и в этих случаях теги привязки могут работать лучше.
  • Syntacti c означает: как вы упомянули, теги привязки определяются как теги ссылок. Это их цель. Поэтому, если вы видите тег привязки, вы знаете, что он должен делать.
  • Доступность: программы чтения с экрана и другие устройства знают, что теги привязки являются тегами ссылок, и могут обрабатывать их так, чтобы их было легче использовать. и «отображать» с помощью специальных устройств.
  • Поведение по умолчанию: браузеры добавляют специальное поведение к тегам привязки, например возможность просматривать их и записывать, посещались они или нет.

При этом вы должны использовать тег типа «кнопка», если намереваетесь выполнить какое-то действие, а не ссылаться на что-то на самом деле. Теперь, если вы не можете предоставить атрибут href, который работает, если вы наберете его в браузере, то, вероятно, это не ссылка.

1 голос
/ 17 апреля 2020

Например, с точки зрения SEO, было бы лучше использовать a с правильным href, который робот сможет распознавать и отслеживать. Даже если вы обработаете клик с помощью js и измените его - индексные роботы будут счастливее с a.

...