Javascript.RU

Почему <a href="javascript:..."> - плохо

Сейчас общеизвестно, что не следует использовать псевдо-протокол javascript:, т.е писать:

<a href="javascript:openComment(123);">
  открыть комментарий
</a>

Почему это плохо, и какие аналоги следует использовать?

Псевдо-протокол javascript: давно устарел. Он поддерживается браузерами, но не описывается в веб-стандартах.

Впрочем, с другой стороны, на использовании javascript: построен ряд интересных технологий, например букмарклеты.

Ссылка через <a href="javascript:..."> не будет работать у пользователей без javascript.

Если это возможно, лучше сделать такой вариант:

<a href="/openComment.php?id=123" onclick="openComment(123); return false">
  открыть комментарий
</a>

Те посетители, у которых javascript отключен, пройдут по ссылке на /openComment.php?id=123 и таки увидят там что-то полезное.

Поисковики тоже проиндексируют /openCommend.php?id=123.

Если ничего подобного такой страничке сделать нельзя, например, ссылка должна запускать AJAX-запрос, то не надо писать:

<!-- плохо -->
<a href="#" onclick="ajax();return false">
  запусти меня
</a>

При нажатии на такую ссылку с отключенным javascript, человека кинет на начало страницы. Не есть гуд. Но какой-то href должен быть. Поэтому лучше сделать так:

<!-- хорошо -->
<a href="/nojs.html" target="_blank" onclick="ajax();return false">
  запусти меня
</a>

Страница /nojs.html может, например, содержать просьбу включить javascript.

Свойством onclick гораздо удобнее управлять из javascript. Оно задает обработчик события. Можно делать несколько обработчиков, назначить функцию а не строку как в href, и т.п.

А псевдо-протокол javascript: - не событие. Он выпадает из общей схемы и потому неудобен.

P.S Строго говоря, и onclick внутри HTML не следует указывать. Отдельно должны идти разметка и javascript-код. Но иногда onclick - это удобно, так почему же нет..

Очень часто используют скрипт в ссылке, когда по клику нужно открыть картинку или описание продукта.

Так вот многие открывают эту ссылку в новой вкладке браузера и получают в адресе страницы "javascript:showPopup(27);", а не то, что они хотели увидеть.

Если все же хочется, чтобы по клику на ссылку у посетителя с отключенным javascript ничего не произошло:

<a href="javascript:void(0)">...</a>

Может ли это быть полезно в реальной жизни?

Сам не использую, но другого способа сделать ссылку нерабочей для посетителей без JS не знаю.


Автор: Гость (не зарегистрирован), дата: 12 января, 2021 - 22:24
#permalink

Great website and the content you shared is very informational and useful.
https://microjobs24.de https://microjobs24.de


Автор: osama shk (не зарегистрирован), дата: 18 января, 2021 - 13:25
#permalink

Great write-up, I am a big believer in commenting on blogs to inform the blog writers know that they’ve added something worthwhile to the world wide web!..
rubbish removal bridgend


Автор: Гость (не зарегистрирован), дата: 22 января, 2021 - 19:41
#permalink

It is wonderful to be here with everyone, I have a lot of knowledge from what you share, to say thank you, the information and https://audigitalsolutions.com/
https://audigitalsolutions.com/


Автор: Гость (не зарегистрирован), дата: 22 января, 2021 - 19:42
#permalink

It is wonderful to be here with everyone, I have a lot of knowledge from what you share, to say thank you, the information and https://audigitalsolutions.com/
https://audigitalsolutions.com/


Автор: osama shk (не зарегистрирован), дата: 24 января, 2021 - 12:56
#permalink

Great write-up, I am a big believer in commenting on blogs to inform the blog writers know that they’ve added something worthwhile to the world wide web!..
Heimautomatisierung


Автор: osama shk (не зарегистрирован), дата: 24 января, 2021 - 15:36
#permalink

Thanks for taking the time to discuss this, I feel strongly about it and love learning more on this topic.
tree surgeons colchester


Автор: Гость (не зарегистрирован), дата: 27 января, 2021 - 12:36
#permalink

Now with coronavirus is really interesting to read things liek this on the internet when you stay at home
https://plasticpalletsales.com
https://plasticpalletsales.com


Автор: Гость (не зарегистрирован), дата: 27 января, 2021 - 12:36
#permalink

Now with coronavirus is really interesting to read things liek this on the internet when you stay at home
https://plasticpalletsales.com
https://plasticpalletsales.com


Автор: Гость (не зарегистрирован), дата: 27 января, 2021 - 17:25
#permalink

I have bookmarked your blog, the articles are way better than other similar blogs.. thanks for a great blog!
https://megabonuscasino.nl/
https://megabonuscasino.nl/


Автор: Гость (не зарегистрирован), дата: 27 января, 2021 - 17:25
#permalink

I have bookmarked your blog, the articles are way better than other similar blogs.. thanks for a great blog!
https://megabonuscasino.nl/
https://megabonuscasino.nl/


Автор: Гость (не зарегистрирован), дата: 27 января, 2021 - 17:51
#permalink

I do not know what to say really what you share very well and useful to the community, I feel that it makes our community much more developed
https://vosairservices.com/
https://vosairservices.com/


Автор: Гость (не зарегистрирован), дата: 27 января, 2021 - 17:51
#permalink

I do not know what to say really what you share very well and useful to the community, I feel that it makes our community much more developed
https://vosairservices.com/
https://vosairservices.com/


Автор: Гость (не зарегистрирован), дата: 28 января, 2021 - 15:31
#permalink

Excellent article. Very interesting to read. I really love to read such a nice article. Thanks! keep rocking.
https://entutorado.com/
https://entutorado.com/


Автор: Гость (не зарегистрирован), дата: 28 января, 2021 - 15:31
#permalink

Excellent article. Very interesting to read. I really love to read such a nice article. Thanks! keep rocking.
https://entutorado.com/
https://entutorado.com/


Автор: osama shk (не зарегистрирован), дата: 6 февраля, 2021 - 01:17
#permalink

Thank you so much for the post you do. I like your post and all you share with us is up to date and quite informative, i would like to bookmark the page so i can come here again to read you, as you have done a wonderful job.
ساختمان هوشمند


Автор: Гость (не зарегистрирован), дата: 10 февраля, 2021 - 14:31
#permalink

Hey there, You have done a fantastic job. I will definitely digg it and personally recommend to my friends. I am confident they'll be benefited from this website.
https://atlanticflagpole.com
https://atlanticflagpole.com


Автор: Гость (не зарегистрирован), дата: 10 февраля, 2021 - 14:31
#permalink

Hey there, You have done a fantastic job. I will definitely digg it and personally recommend to my friends. I am confident they'll be benefited from this website.
https://atlanticflagpole.com
https://atlanticflagpole.com


Автор: Гость (не зарегистрирован), дата: 12 февраля, 2021 - 19:23
#permalink

I appreciate, lead to I found just what I used to be taking a look for. You've ended my four day lengthy hunt! God Bless you man. Have a nice day. Bye
https://gold4vanilla.com/
https://gold4vanilla.com/


Автор: Fumigation Services (не зарегистрирован), дата: 15 февраля, 2021 - 12:20
#permalink

Pest Control Services in Karachi


Автор: Fumigation Services (не зарегистрирован), дата: 15 февраля, 2021 - 12:21
#permalink

Pest Control Services in Karachi


Автор: Гость (не зарегистрирован), дата: 18 февраля, 2021 - 13:03
#permalink

It is appropriate time to make a few plans for the future and it's time to be happy. I've learn this publish and if I may just I want to counsel you some attention-grabbing things or tips. Maybe you could write subsequent articles regarding this article. I wish to learn even more issues approximately it!
https://schmidtchristmasmarket.com/
https://schmidtchristmasmarket.com/


Автор: Гость (не зарегистрирован), дата: 18 февраля, 2021 - 13:04
#permalink

It is appropriate time to make a few plans for the future and it's time to be happy. I've learn this publish and if I may just I want to counsel you some attention-grabbing things or tips. Maybe you could write subsequent articles regarding this article. I wish to learn even more issues approximately it!
https://schmidtchristmasmarket.com/
https://schmidtchristmasmarket.com/


Автор: Гость (не зарегистрирован), дата: 23 февраля, 2021 - 13:43
#permalink

Attractive component of content. I just stumbled upon your weblog and in accession capital to say that I acquire actually enjoyed account your weblog posts. Any way I will be subscribing in your feeds or even I achievement you get admission to consistently fast.
https://whispersandhoney.com/
https://whispersandhoney.com/


Автор: Гость (не зарегистрирован), дата: 23 февраля, 2021 - 13:43
#permalink

Attractive component of content. I just stumbled upon your weblog and in accession capital to say that I acquire actually enjoyed account your weblog posts. Any way I will be subscribing in your feeds or even I achievement you get admission to consistently fast.
https://whispersandhoney.com/
https://whispersandhoney.com/


Автор: osama shk (не зарегистрирован), дата: 27 февраля, 2021 - 17:19
#permalink

Superbly written article, if only all bloggers offered the same content as you, the internet would be a far better place..
rumah pintar


Отправить комментарий

Приветствуются комментарии:
  • Полезные.
  • Дополняющие прочитанное.
  • Вопросы по прочитанному. Именно по прочитанному, чтобы ответ на него помог другим разобраться в предмете статьи. Другие вопросы могут быть удалены.
    Для остальных вопросов и обсуждений есть форум.
P.S. Лучшее "спасибо" - не комментарий, как все здорово, а рекомендация или ссылка на статью.
Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Разрешены HTML-таги: <strike> <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <u> <i> <b> <pre> <img> <abbr> <blockquote> <h1> <h2> <h3> <h4> <h5> <p> <div> <span> <sub> <sup>
  • Строки и параграфы переносятся автоматически.
  • Текстовые смайлы будут заменены на графические.

Подробнее о форматировании

CAPTCHA
Антиспам
3 + 7 =
Введите результат. Например, для 1+3, введите 4.
 
Текущий раздел
Поиск по сайту
Содержание

Учебник javascript

Основные элементы языка

Сундучок с инструментами

Интерфейсы

Все об AJAX

Оптимизация

Разное

Дерево всех статей

Последние комментарии
Последние темы на форуме
Forum