Динамические подсказки

Автор: cetis Сайт: http://www.cetis.ru
   
   Введение
   В этом уроке мы рассмотрим реализацию динамических подсказок и подсветки кнопок. Эти две функции ничем принципиально не различаются. Обе они основаны на показе и прятании слоя. Я опишу их раздельно только для того, чтобы Вы оценили возможности применения динамического HTML.
   
   Подсветка кнопок
   В прошлом уроке мы написали функции для прятания и показа слоя. Вот они:
   
   function hideLayer(layerName){
    eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.visibility="hidden"');
   }
   
   function showLayer(layerName){
    eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.visibility="visible"');
   }
   
   Воспользуемся ими для реализации нашего примера. Предположим, что у нас есть некое меню. Мы хотим, чтобы при выборе курсором мыши определенного пункта, он подсвечивался вокруг (или изменялся другим образом). Создадим две картинки. Сам пункт меню и его подсветку (В зависимости от способа подсветки скрипт пишется немного по-разному, он будет немного проще, если подсвечивать не сверху, как у меня, а снизу).
   
   Создадим два слоя. Один видимый с пунктом меню, другой невидимый с подсветкой.
   
   
   <style type="text/css">
   #button1 {POSITION: absolute; Z-INDEX: 10; LEFT: 150; TOP: 60; WIDTH: 423; HEIGHT: 45}
   #highlight1 {POSITION: absolute; Z-INDEX: 15; VISIBILITY: hidden; LEFT: 150; TOP: 60; WIDTH: 423; HEIGHT: 45}
   </style>
   <div id="button1">
   <a href="wd.html"><img src="wd.gif" width=189 height=43 border=0></a>
   </div>
   <div id="highlight1">
   <a href="wd.html"><img src="wd-g.gif" width=189 height=43 border=0></a>
   </div>
   
   При этом Z-INDEX у пункта меню должен быть больше, чем у подсветки, если мы подсвечиваем "снизу", и меньше, если мы подсвечиваем "сверху" (наш вариант).
   
   Ну а теперь воспользуемся событиями onMouseOver и onMouseOut:
   
   <a href="wd.html" onMouseOver="showLayer('highlight1')" onMouseOut="hideLayer('highlight1')">
   <img src="wd.gif" width=189 height=43 border=0>
   </a>
   
   <a href="wd.html" onMouseOver="showLayer('highlight1')" onMouseOut="hideLayer('highlight1')">
   <img src="wd-g.gif" width=189 height=43 border=0>
   </a>
   
   Если используется подсветка "снизу", ссылка у подсветки не нужна:
   
   
   <a href="wd.html" onMouseOver="showLayer('highlight1')" onMouseOut="hideLayer('highlight1')">
   <img src="wd.gif" width=189 height=43 border=0>
   </a>
   
   <img src="wd-g.gif" width=189 height=43 border=0>
   
   Динамические подсказки
   Вы считаете, что Ваши пункты меню недостаточно информативны? Вы можете сделать так, чтобы при наведении курсором на пункт меню в определенном месте появлялась подсказка.
   
   Все, что Вам для этого нужно, это для каждого пункта меню создать невидимый слой с подсказкой. При этом все эти слои должны иметь одинаковые позиционные параметры.
   
   <style type="text/css">
   #button1 {POSITION: absolute; Z-INDEX: 15; LEFT: 50; TOP: 60; WIDTH: 423; HEIGHT: 45}
   #explain1 {POSITION: absolute; Z-INDEX: 15; VISIBILITY: hidden; LEFT: 200; TOP: 60; WIDTH: 171; HEIGHT: 116}
   </style>
   <div id="button1">
   <a href="mailto:webmaster@webclub.ru">Почта</a>
   </div>
   <div id="explain1">
   Нажмите сюда, если Вы хотите послать письмо вебмастеру узла.
   </div>
   
   А теперь, как и в предыдущем примере, воспользуемся событиями onMouseOver и onMouseOut:
   
   <a href="mailto:webmaster@webclub.ru" onMouseOver="showLayer('explain1')" onMouseOut="hideLayer('explain')">
   Почта</a>
   
   
   

Опубликовано: HTTP://WWW.R-T-F-M.INFO, pauk ©® 2000-2011.
All rights reserved.
При перепечатки ссылка на сайт обязательна.
Мнение администрации сайта не всегда совпадает с мнением автора..