Форум: "Прочее";
Текущий архив: 2007.05.27;
Скачать: [xml.tar.bz2];
ВнизОх уж эти браузеры :( Найти похожие ветки
← →
homm © (2007-04-25 23:05) [0]
<html><head>
<style>
div { border: 1px solid black; }
.sub { position: absolute; background: #e0e0e0; display:none; }
.why { font-size: 36px; color: red; }
</style>
</head>
<script>
function doover(n) {document.getElementById("sub"+n).style.display="block";}
function doout(n) {document.getElementById("sub"+n).style.display="none";}
</script>
<body>
Этот код вызывает подменю при наведении мыши.
<div onmouseover="doover(1);" onmouseout="doout(1);">menu<br><div class="sub" id="sub1">item1<br>item2<br>item3</div></div>
<br><br><br><br><br><br><br>
Этот код вызывает подменю при щелчке мыши, но при наведении на элементы, они пропадают.
<div onmousedown="doover(2);" onmouseout="doout(2);">menu<br><div class="sub" id="sub2">item1<br>item2<br>item3</div></div>
<br><br><br><br><br>
Этот эффект наблюдаеться во всех браузерах…<br>
<span class="why">Почему???</span>
</body>
</html>
← →
Алхимик © (2007-04-26 00:14) [1]А что странного?
onmouseout наступает когда с sub2 сваливает мышь.
сделай вместо:
<div onMouseDown="doover(2);" onMouseOut="doout(2);">menu<br>
<div class="sub" id="sub2">item1<br>
item2<br>
item3</div>
</div>
так:<div onMouseDown="doover(2);">menu<br>
<div class="sub" id="sub2" onMouseOut="doout(2);">item1<br>
item2<br>
item3</div>
</div>
← →
McSimm © (2007-04-26 00:15) [2]В первом случае последовательность вызовов такая:
1. Наведение на div : doover(1);
2. Перевод с внешнего div на внутренний: doout(1); doover(1);
Во втором случае:
1. Клик на div : doover(2);
2. Перевод с внешнего div на внутренний: doout(2);
Можно добавить обработку mouseover для вложенного div, тогда будет работать как в первом случае.
<div onmouseup="doover(2);" onmouseout="doout(2);">menu<br><div onmouseover="doover(2);" class="sub" id="sub2">item1<br>item2<br>item3</div></div>
← →
McSimm © (2007-04-26 00:18) [3]
> эффект наблюдаеться во всех браузерах…
редкая удача :)
← →
homm © (2007-04-26 00:18) [4]> Можно добавить обработку mouseover для вложенного div, тогда
> будет работать как в первом случае.
WOW!! Спасибо :) Все не мог вкурить, что же происходит, думал что раз в первом случае не исчезает, значит и не происходит doout(1) вовсе :)
← →
homm © (2007-04-26 00:21) [5]> редкая удача :)
Исправление, кстати, тоже везде работает :) Еще раз спасибо, вчера вечером над этим-же бился, уже думал что это финиш.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2007.05.27;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.039 c