stringtranslate.com

Мета обновление

Meta refresh — это метод указания веб-браузеру автоматически обновлять текущую веб-страницу или фрейм через заданный интервал времени с использованием элемента HTML с параметром, установленным на " ", и параметром, задающим интервал времени в секундах. Также можно указать браузеру извлекать другой URL при обновлении страницы, включив альтернативный URL в параметр. Установив интервал времени обновления на ноль (или очень низкое значение), meta refresh можно использовать как метод перенаправления URL . metahttp-equivrefreshcontentcontent

История

Эта функция была первоначально представлена ​​в Netscape Navigator 1.1 (около 1995 г.) в виде заголовка HTTP и соответствующего metaэлемента HTML HTTP-эквивалентов, что позволяет автору документа сигнализировать клиенту об автоматической перезагрузке документа или переходе на указанный URL-адрес после указанного тайм-аута. [1] Это самый ранний механизм опроса, доступный для веба [ нужна ссылка ] , позволяющий пользователю видеть последние обновления на часто меняющихся веб-страницах, например, на страницах, отображающих результаты футбольных матчей или прогноз погоды .

Удобство использования

Использование метаобновления не приветствуется Консорциумом Всемирной паутины (W3C), поскольку неожиданное обновление может дезориентировать пользователей. [2] Метаобновление также ухудшает работу кнопки «Назад» в некоторых браузерах (включая Internet Explorer 6 и более ранние версии), хотя большинство современных браузеров компенсируют это ( Internet Explorer 7 и более поздние версии, Mozilla Firefox , Opera , Google Chrome ).

Существуют законные применения meta-refresh, такие как предоставление обновлений динамическим веб-страницам или реализация навигации, контролируемой сайтом, без JavaScript . Многие крупные веб-сайты используют его для обновления новостей или обновлений статуса, особенно когда зависимости от JavaScript и заголовков перенаправления нежелательны.

Примеры

Поместите внутрь <head>элемента, чтобы обновить страницу через 5 секунд:

< meta  http-equiv = "refresh"  content = "5" >

Перенаправление https://example.com/через 5 секунд:

< meta  http-equiv = "refresh"  content = "5; url=https://example.com/" >

Перенаправить https://example.com/немедленно:

< meta  http-equiv = "refresh"  content = "0; url=https://example.com/" >

Недостатки

Мета-теги Refresh имеют некоторые недостатки:

Альтернативы

Meta refresh использует http-equivметатег для эмуляции заголовка Refresh HTTP , и как таковой может также быть отправлен в качестве заголовка веб-сервером HTTP. Хотя Refreshон не является частью стандарта HTTP , он поддерживается всеми распространенными браузерами.

Пример HTTP-заголовка перенаправления https://example.com/через 5 секунд:

Обновить: 5; url=https://www.example.com/

Существуют альтернативы для обоих вариантов использования метаобновления.

Для перенаправления

Альтернативой является отправка кода статуса перенаправления HTTP , например HTTP 301 или 302. Это предпочтительный способ перенаправления пользовательского агента на другую страницу. Это может быть достигнуто с помощью специального правила на веб-сервере или с помощью простого скрипта на веб-сервере.

Еще одной альтернативой является JavaScript , но она не рекомендуется, поскольку пользователи могли отключить JavaScript в своих браузерах.

Самый простой способ перенаправления JavaScript с использованием onloadсвойства тега body:

< body  onload = "window.location = 'http://example.com/'" ><!-- Ваш контент здесь --></ тело >

Для обновления

Альтернативный метод — предоставить устройство взаимодействия, например кнопку, чтобы позволить пользователю выбирать, когда обновлять контент. Другой вариант — использовать технику, например Ajax, для обновления (частей) веб-сайта без необходимости полного обновления страницы, но это также потребует, чтобы пользователь включил JavaScript в своем браузере.

Вы можете обновить веб-страницу с помощью метода JavaScript location.reload . Этот код может быть вызван автоматически при возникновении события или просто когда пользователь нажимает на ссылку. Если вы хотите обновить веб-страницу с помощью щелчка мыши, то вы можете использовать следующий код:

< a  href = "javascript:location.reload(true)" > Обновить эту страницу </ a >

Ссылки

  1. ^ "Исследование динамических документов". Netscape Communications Corporation. Архивировано из оригинала 2002-01-24 . Получено 2020-04-24 .
  2. ^ Основные методы для Руководства по доступности веб-контента 1.0 - Примечание W3C от 6 ноября 2000 г.
  3. ^ Мета-тег обновления, статья на сайте About.com, посвященная использованию тега для перезагрузки или перенаправления страницы.

Внешние ссылки