Как использовать ссылку для вызова кода JavaScript?
javascript
Джин Юн
источник
источник
Ненавязчивый JavaScript, нет зависимости от библиотеки:
источник
href
если я не хочу перенаправлять пользователя и просто хочу запустить какой-то код? Изменить: Я вижу , что он может быть оставлен пустым:href=""
.onclick
событие черезwindow.onload
, а не вставлятьonclick
непосредственно в<a>
тег?РЕДАКТИРОВАТЬ, годы спустя: НЕТ! Никогда не делай этого! Я был молодым и глупым!
Снова измените: пару человек спросили, почему вы не должны этого делать. Есть несколько причин:
Представление: HTML должен сосредоточиться на представлении. Помещение JS в HREF означает, что ваш HTML теперь вроде как работает с бизнес-логикой.
Безопасность: JavaScript в вашем HTML-коде нарушает Политику безопасности контента (CSP) . Политика безопасности контента (CSP) - это дополнительный уровень безопасности, который помогает обнаруживать и смягчать определенные типы атак, включая межсайтовый скриптинг (XSS) и атаки с использованием данных. Эти атаки используются для всего: от кражи данных до порчи сайта или распространения вредоносных программ. Узнайте больше здесь .
Доступность: теги привязки предназначены для ссылки на другие документы / страницы / ресурсы. Если ваша ссылка никуда не идет, это должна быть кнопка . Это позволяет читателям экрана, терминалам Брайля и т. Д. Намного легче определять, что происходит, и дает пользователям с нарушениями зрения полезную информацию.
источник
href='#'
иalert()
вonclick
?И почему бы не ненавязчиво с jQuery:
HTML
источник
Ненавязчивый Javascript имеет много преимуществ, вот шаги, которые он предпринимает, и почему это хорошо использовать.
ссылка загружается как обычно:
<a id="DaLink" href="http://host/toAnewPage.html"> нажмите здесь </a>
это важно, потому что это будет работать для браузеров с отключенным javascript или если в коде javascript есть ошибка, которая не работает.
JavaScript запускается при загрузке страницы:
если javascript работает успешно, возможно, загружая содержимое текущей страницы с помощью javascript, возвращаемое значение false отменяет срабатывание ссылки. другими словами, установка return false приводит к отключению ссылки, если JavaScript успешно работал. Позволяя ему работать, если javascript этого не делает, делает хорошую резервную копию, чтобы ваш контент отображался в любом случае, для поисковых систем и если ваш код ломается, или просматривается в не-JavaScript-системе.
Лучшая книга на эту тему - «Дом сценариев» Джереми Кейта
источник
Или, если вы используете PrototypeJS
источник
Я думаю, что вы можете использовать
onclick
событие, что-то вроде этого:источник
основанный на использовании ответа @mister_lucky с jquery:
HTML-код:
источник
просто используйте JavaScript: ---- пример
источник