");
document.write("Главная");
document.write("");
document.write("
|
");
document.write("");
document.write("Информация");
document.write("");
document.write("
|
");
document.write("");
document.write("Сорта яблок");
document.write("");
document.write("
|
");
document.write("");
document.write("Рецепты");
document.write("");
document.write("
|
");
document.write("
|
");
document.write(" О проекте");
document.write("");
document.write("");
document.write("");
Приведенный пример является самым объемным в этой книге, однако его суть довольно проста. Вначале в документ записывается HTML‑код создания трех таблиц, соответствующих раскрывающимся меню (идентификаторы таблиц: general, types, recepts). Четвертая таблица, добавляемая в документ сценарием, является строкой меню. Начнем рассмотрение именно с нее.
Для начала перепишем HTML‑код, описывающий строку меню, в более наглядной форме (то есть рассмотрим создаваемую сценарием таблицу) (пример 14.3).
Пример 14.3. Таблица строки меню
Главная
|
Информация
|
Сорта яблок
|
Рецепты
|
|
О проекте
Как можно увидеть, строка меню во многом аналогична той, что была создана в предыдущей главе. Исключением является использование гиперссылок вместо обработки событий onClick для пунктов Главная и О проекте. Конечно, можно было бы осуществлять переход к страницам для этих пунктов при обработке события onClick с использованием объекта location, но зачем? Ведь для простого перехода к другой странице проще использовать стандартную обработку выбора пользователем гиперссылки. Да и к тому же не нужно заботиться о форме указателя, когда он находится над текстом пункта меню.
Обратите также внимание, что для остальных гиперссылок (пункты меню Информация, Сорта, Рецепты) выполнение действия по умолчанию не используется.
Подсветка выделенных пунктов меню осуществляется за счет назначения ячейкам таблицы соответствующего стилевого класса при обработке событий onMouseOver (ячейка выделяется, включается подсветка) и onMouseOut (подсветка убирается).
При выборе одного из пунктов Информация, Сорта, Рецепты обработчиком события onClick вызывается функция show_menu(), показывающая меню возле выбранного пункта. Эта функция вместе с функцией hide_menu() находится в файле popup_menu.js. Они приводятся в примере 14.4.
Пример 14.4. Сценарий, показывающий и скрывающий всплывающее меню
var lastMenu = null; //Прошлое показанное меню
//Функция показывает меню function show_menu(menu, main_menu, item){
if (menu.className == "menu"){
//Закрываем открытое меню hide_menu();
return;
}
//Скрываем прошлое меню hide_menu();
//Определяем положение меню menu.className = "menu";
|
|