[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Задержка спрятывания слоя и наоборот
md5
 
<script type="text/javascript">
function Open(id)
{
  document.getElementById(id).style.display="block";
}
 
function Close(id)
{
  document.getElementById(id).style.display="none";
}
 
function Delay(id)
{
  setTimeout("Close('"+id+"')",1000);
}
</script>
 


 
<a href="#" OnMouseOver="javascript:Open('sub1');" OnMouseOut="javascript:Delay('sub1')">Мэню1</a>
 
 
 
<div id="sub1" style="display: none;" OnMouseOut="javascript:Delay('sub1')">
<a href="/1/">1</a>
 
<a href="/2/">2</a>
 
<a href="/3/">3</a>
 
<a href="/4/">4</a>
 
</div>


Вопрос в следующем, как сделать так, чтобы при переносе курсора с Мэню на слой, слой не исчезал?



Спустя 55 минут, 18 секунд (19.11.2006 - 15:27) vasa_c написал(а):
Обычно делают так, чтобы при наведении на пункт меню выскакивал слой, который не только выводил подпункты, но и перекрывал само название пункта. И уход мыша ловят уже на этом слое.
Здесь правда у тебя есть секундная задержка, так что по ее истечении можно не сразу убирать слой, а проверять какую-то переменную. Т.е. мышь уходит с пункта меню и за секунду она успевает попасть на слой с подпунктами и по этому событию устанавливается та самая переменная, которая будет мешать delay() закрыть слой.

Спустя 37 минут, 48 секунд (19.11.2006 - 16:05) md5 написал(а):
QUOTE
проверять какую-то переменную

это интересно, спасибо
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.