Использование протокола javascript:
влияет на доступность, а также ухудшает SEO-ориентированность вашей страницы.
Обратите внимание, что HTML означает что-то вроде Hypter Text ... Hyper Text обозначает текст со ссылками и ссылками вэто то, для чего используется элемент привязки <a>
.
Когда вы используете javascript:
«протокол», вы неправильно используете элемент привязки.Так как вы неправильно используете элемент <a>
, такие вещи, как Google Bot и программа чтения с Jaws Screen, будут иметь проблемы с «пониманием» вашей страницы, так как они не очень заботятся о вашем JS, но заботятся о Hyper Text ML, принимаяспециальное примечание привязки hrefs
.
Это также влияет на удобство использования вашей страницы, когда пользователь, у которого не включен JavaScript, посещает вашу страницу;вы нарушаете ожидаемую функциональность и поведение ссылок для этих пользователей.Он будет выглядеть как ссылка, но он не будет действовать как ссылка, потому что он использует протокол javascript
.
Вы можете подумать, «но у скольких людей в настоящее время отключен JavaScript?»но мне нравится формулировать эту идею более примерно так: «Сколько потенциальных клиентов я хочу отвергнуть только из-за флажка в настройках браузера?»
Это сводится к тому, как href
являетсяАтрибут HTML, и как таковой, он принадлежит информации вашего сайта, а не его поведению.JavaScript определяет поведение, но вы никогда не хотите, чтобы он мешал данным / информации.Воплощением этой идеи будет внешний файл JavaScript;не используется onclick
в качестве атрибута, а вместо этого в качестве обработчика событий в вашем файле JavaScript.