Навигационная панель для Web-сайта

Институт информатизации образования Российской академии образования, Москва

Для Web-сайта, как бы ни было интересно его содержание и красиво оформление, важно обеспечить хорошо продуманный и удобный для пользователя механизм "навигации", позволяющий ориентироваться среди страничек данного сайта. Сделать это можно по-разному: одни ограничиваются перекрестными ссылками в тексте, другие создают фреймовую структуру и гиперссылочное меню в одном из фреймов, третьи предусматривают на каждой страничке "навигационную панель" с "кнопками" для перехода на основные разделы сайта.

Из всего перечисленного наиболее удобны для пользователя именно "навигационные панели" на каждой Web-странице. Но если сайт активно развивается и в нем часто должны появляться новые разделы, либо, например, речь идет о регулярном "онлайновом" издании, то это требует обновления содержимого "навигационной панели". И тогда разработчику приходится менять HTML-код "панели" на всех уже существующих страничках, где она имеется. Конечно, многие современные программы Web-редактирования заметно облегчают эту работу, автоматически генерируя "навигационные панели" и "перекомпилируя" все составляющие сайт HTML-файлы при каждом их изменении, но все равно приходится пересылать их на сервер в полном объеме заново.

Предлагаемая несложная идея ("ноу-хау") автора доклада позволяет облегчить эту работу. Смысл идеи состоит в следующем: предусмотрим на каждой Web-странице сверху (там, где должна размещаться "навигационная панель") маленькое внедренное окно IFRAME шириной 80-100% от ширины всей страницы и с высотой, достаточной, чтобы в нем уместилась сама "панель". Последнюю оформим в виде отдельного HTML-файла (например, с именем panel. htm) с тем же самым фоном, что и на всей странице, и предпишем в тэге IFRAME загружать этот "панельный" файл сразу после загрузки страницы.

НЕ нашли? Не то? Что вы ищете?

В результате, если теперь мы захотим добавить в наш сайт новую страницу (раздел), то потребуется:

- скопировать в ее HTML-текст тэг IFRAME со всеми его параметрами с одной из существующих страниц;

- изменить соответствующим образом "панель навигации" в файле panel. htm;

- переслать на сервер файлы новой страницы и файл panel. htm (взамен прежнего).

Вот и все! HTML-файлы всех прежних страниц менять не потребуется - при их открытии в имеющееся на них IFRAME-окно будет автоматически грузиться уже новая "навигационная панель"! Единственное, о чем нужно не забывать, - это указывать во всех гиперссылках, содержащихся в файле "панели", в качестве "целевого" основное окно браузера, записывая параметр TARGET=_top (именно строчными буквами, чтобы браузер не пытался каждый раз открывать новое окно, чем обычно "грешит" Internet Explorer).

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

Тем, кто не очень хорошо знаком с скриптовым программированием, можно порекомендовать обратиться к второму изданию книги: Усенков Web-мастера, готовящемуся в настоящее время к выходу в свет московским издательством "Лаборатория Базовых Знаний" (в первом издании книги соответствующие листинги
еще не публиковались), а также посетить сайт журнала "Юный Техник" (http://jtdigest. *****), где описываемый прием использован на страницах содержаний выпусков журнала.