Шаг 23.
Внутренние и смешанные ссылки

    На этом шаге рассмотрим способ организации внутренних и смешанных ссылок.

    Во всех задачах на использование ссылок нам приходилось создавать несколько HTML-документов. Однако, наверняка, у некоторых из вас возникал вопрос: а можно ли создать ссылку, с помощью которой можно перейти к какой-то части этого же самого документа? Возьмите, например, любую книгу. Чтобы найти нужный материал, мы сначала обращаемся к оглавлению, а затем – к нужной странице этой же самой книги,номер которой нам стал известен из оглавления.

    Можно ли организовать что-нибудь подобное в языке HTML? Оказывается, можно. Кроме ссылок на другие документы можно организовать ссылки на определенные части текущего документа. В этом случае мы должны решить две задачи:

    Если вы знаете какой-нибудь язык программирования, то, наверняка, вспомните задание меток и операторы, позволяющие переходить на эти метки (например, GOTO). На практике это реализуется достаточно просто. Сначала обратимся к первому из перечисленных условий. Вспомним, что для создания ссылок мы использовали тэг <A>. Так вот, этот же тэг используется для создания метки, только вместо параметра HREF применяется параметр NAME:


Рис.1. Пример использования прараметра NAME

    Между тэгами <A> и </A> ничего нет, потому что нам нужно просто пометить начало какого-то фрагмента HTML-документа. Таким образом, мы решили первую задачу.

    Теперь переходим ко второй: нужно создать ссылку на эту метку. Для ее создания используется ранее изученная конструкция тэга <A>, которая применялась для организации обычных (внешних) ссылок, только меняется значение параметра HREF:


Рис.2. Пример использования внутренней ссылки

    Символ # свидетельствует о том, что это обращение к внутренней ссылке. Мы решили вторую задачу.

    Приведем общую структуру HTML-документа, содержащего внутренние ссылки:


.     .     .     .     .     .
<!--Перечень внутренних ссылок -->
<A HREF=#имя1>Текст1</A><BR>
<A HREF=#имя2>Текст2</A><BR>
.     .     .     .     .     .
<A NAME=имя1></A>
<!--Первая метка. -->
.     .     .     .     .     .
<A NAME=имя2></A>
<!--Вторая метка. -->
.     .     .     .     .     .

    В заключение попробуем найти ответ на следующий вопрос: можно ли создать внешнюю (обычную) ссылку, при обращении к которой загружаемый HTML-документ просматривается в браузере не сначала, а с отмеченной позиции? Напомним, что при использовании внешней ссылки загружаемый HTML-документ браузер демонстрирует от его начала.

    На этот вопрос также можно дать положительный ответ. Алгоритм создания такой ссылки отличается от рассмотренного ранее во втором шаге: значение параметра HREF тэга <A> должно содержать в себе как имя открываемого HTML-документа, так и имя метки, к которой нужно осуществить переход:


Рис.3. Пример использования параметра HREF

    Таким образом, структура приложения, содержащего такие смешанные ссылки, может быть следующей:

1)структура главного файла:


.     .     .     .     .     .
<!--Перечень смешанных ссылок -->
<A HREF=f_pr.html#имя1>Текст1</A<BR>
<A HREF=f_pr.html#имя2>Текст2</A><BR>
.     .     .     .     .     .

2) структура вызываемого файла (имя файла f_pr.html):

.     .     .     .     .     .
<A NAME=имя1></A>
<!--Первая метка. -->
.     .     .     .     .     .
<A NAME=имя2></A>
<!--Вторая метка. -->
.     .     .     .     .     .

    На следующем шаге мы рассмотрим несколько примеров использования ссылок.

Предыдущий шаг Содержание Следующий шаг