Атрибут ping используется в теге <a> для отправки фонового POST-запроса на указанный URL, когда пользователь переходит по ссылке. Это позволяет отслеживать переходы без изменения поведения самой ссылки.

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

Как работает ping в HTML

🚀 Сегодня вам бесплатно доступен тренажёр по HTML и CSS.

Когда пользователь кликает по ссылке с атрибутом ping, браузер:

  1. Выполняет стандартный переход по href.
  2. Одновременно отправляет POST-запрос на адрес, указанный в ping.
  3. Запрос содержит заголовки Ping-From и Ping-To, чтобы сервер-аналитика знал, откуда и куда был переход.

Пример:

<a href="https://example.com" ping="https://analytics.example.com/ping">Перейти на сайт</a>

В этом примере при клике произойдёт переход на https://example.com, а на https://analytics.example.com/ping отправится POST-запрос.

Когда это удобно

  • Аналитика переходов. Без JavaScript и без редиректов можно отслеживать, как пользователи взаимодействуют с внешними ссылками.
  • Микросервисы и учётные системы. Используется для регистрации кликов, не нарушая приватность основного сайта.
  • Производительность. Запрос выполняется асинхронно и не влияет на загрузку целевой страницы.

Что важно знать

  • Работает только для <a>, не поддерживается в <form> или других тегах.

  • ping может принимать один или несколько URL через пробел:

    <a href="..." ping="https://a.com https://b.com">
    
  • Не отправляется, если пользователь открывает ссылку в новой вкладке (Ctrl + click, Cmd + click).

  • Может быть заблокирован настройками браузера или расширениями.

  • Некоторые браузеры (например, Safari) не поддерживают или отключают ping по умолчанию.

Пример: отслеживание переходов

<a
  href="https://partner.example.com"
  ping="https://track.htmlacademy.ru/outbound">
  Перейти к партнёру
</a>

При клике браузер отправит POST-запрос на track.htmlacademy.ru, а пользователь перейдёт на сайт партнёра.

Заключение

Атрибут ping — простой способ реализовать отслеживание переходов без использования JavaScript. Он не влияет на навигацию, не нарушает работу ссылок и может быть полезен для учёта кликов в аналитических системах. Однако его использование стоит сочетать с другими методами, так как поддержка в браузерах не абсолютна.

Больше обзоров веб-функций — в телеграм-канале HTML Academy.

Нашли ошибку или опечатку? Напишите нам.