Опубликован: 19.03.2007 | Уровень: для всех | Доступ: платный
Лекция 7:

Соединение страниц

Переадресация страниц

В Интернете можно встретить сайты Web, которые автоматически переадресуют посетителей с одной страницы на другую. Эта техника часто используется, когда домашняя страница перемещается с одного адреса URL на другой. В течение некоторого периода времени исходный адрес URL переадресует на новый адрес URL, чтобы пользователи имели возможность изменить свои закладки или каталоги ссылок.

Тег <meta>

Переадресация выполняется с помощью тега <meta>, который присутствует в разделе <head> документа и используется обычно для предоставления информации о документе XHTML. Общая форма этого тега, применяемая для переадресации, показана ниже.

<meta
  http-equiv="refresh"
  content="seconds; url=url"
/>
Листинг 7.17. Общая форма тега <meta/>

Атрибут http-equiv определяет такое использование тега <meta>, как обновление или перезагрузку текущей страницы. Атрибут content определяет количество секунд ожидания, прежде чем произойдет перезагрузка вместе с адресом URL страницы, на которую произойдет переадресация, когда текущая страница перезагрузится.

Например, страница с именем Redirect.htm расположена в каталоге, где находится страница xhtml07-04.htm. На странице Redirect.htm кодируется тег meta, который через пять секунд ожидания перенаправляет вызов на страницу xhtml07-04.htm.

В разделе <head> страницы Redirect.htm имеется следующий тег <meta> для перехода на страницу xhtml07-04.htm.

<head>
  <title>Redirect Page</title>
  <meta http-equiv="refresh" content="5; url=xhtml07-04.htm"/>
</head>
Листинг 7.18. Код автоматической переадресации на другую страницу

Слайд-шоу

В теге <meta/> с атрибутами http-equiv и content можно закодировать переход на ряд страниц, чтобы создать самовыполняющуюся демонстрацию слайдов (слайд-шоу), которая автоматически загружает одну страницу за другой. Каждый тег <meta/> определяет время просмотра страницы вместе со ссылкой на следующую страницу последовательности.

Следующая графическая ссылка загружает первую (Slide1.htm) из пяти страниц слайд-шоу, которые все расположены в текущем каталоге. Код этой начальной ссылки показан ниже.

<a href="Slide1.htm"><img src="Pixar.gif" alt="Просмотр слайд-шоу"/></a>
Ссылка на слайд-шоу

Рис. 7.13. Ссылка на слайд-шоу

Каждая страница слайд-шоу содержит тег <meta/>, задающий адрес URL следующей страницы в последовательности и задающий таймер обновления на три секунды. Следующий сокращенный код находится на страницах слайдов.

<head>
  <title>Slide 1</title>
  <meta http-equiv="refresh" content="3; url=Slide2.htm"/>
</head>
<body>
  <h1>Toy Story</h1>
  <p><img src="ToyStory.jpg" alt="Toy Store Image"/></p>
</body>

<head>
  <title>Slide 2</title>
  <meta http-equiv="refresh" content="3; url=Slide3.htm"/>
</head>
<body>
  <h1>A Bug's Life</h1>
  <p><img src="BugsLife.jpg" alt="A Bugs's Life Image"/></p>
</body>

<head>
  <title>Slide 3</title>
  <meta http-equiv="refresh" content="3; url=Slide4.htm"/>
</head>
<body
  <h1>Finding Nemo</h1>
  <p><img src="FindingNemo.jpg" alt="Finding Nemo Image"/></p>
</body>

<head>
  <title>Slide 4</title>
  <meta http-equiv="refresh" content="3; url=Slide5.htm"/>
</head>
<body
  <h1>Monsters, Inc.</h1>
  <p><img src="MonstersInc.jpg" alt="Monsters, Inc. Image"/></p>
</body>

<head>
  <title>Slide 5</title>	
  <meta http-equiv="refresh" content="3; url=begin.htm"/>
</head>
<body
  <h1>Toy Story 2</h1>
  <p><img src="ToyStory2.jpg" alt="Toy Store 2 Image"/></p>
</body>
Листинг 7.19. Частичный код страниц слайд-шоу

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

<a href="#" onclick="open('Slide1.htm','','')">
  <img src="Pixar.gif" alt="Просмотр слайд-шоу"/>
</a>
Листинг 7.20. Вывод слайд-шоу в отдельном окне браузера

Отметим, что так как тег <meta/> не может закрыть окно браузера, то последняя страница слайдов, которая открывается в этом отдельном окне, не должна содержать тег <meta/> для переадресации снова на исходную страницу, приводя тем самым к тому, что исходная страница будет открыта в двух отдельных окнах - в исходном окне и в отдельном окне слайд-шоу. Вместо этого конечная страница слайд-шоу должна предложить посетителям просто закрыть окно, чтобы оставить только исходное окно, содержащее страницу с исходной ссылкой.

Елена Сапегова
Елена Сапегова

После прохождения теоретической части пришло письмо об окончании теоретической части курса, будет ли практическая часть?

Владислав Нагорный
Владислав Нагорный

Подскажите, пожалуйста, планируете ли вы возобновление программ высшего образования? Если да, есть ли какие-то примерные сроки?

Спасибо!

Сергей Ефимчик
Сергей Ефимчик
Беларусь, Минск, сш 55, 1983
Алксей Чебукин
Алксей Чебукин
Украина, г. Мелитополь, Таврийский Государственный Агротехнологический университет, 2009