JavaScript

Ivan826

Как заставить этот код корректно работать в Мозилле? Насколько я понимаю там другая последовательность исполнения функций
<SCRIPT LANGUAGE="JavaScript">
<!--
function blink(Id)
{
if(document.getElementById(Id).style.display=="none")document.getElementById(Id).style.display=""; else document.getElementById(Id).style.display="none"
}
//-->
</SCRIPT>

<div style="width: 50px;height: 50px;background-color: red;" onMouseOver="blink('qa')" onMouseOut="blink('qa');"></div>
<div style="width: 50px;height: 50px;background-color: green;display: none;" id="qa" onMouseOver="blink(this.id)" onMouseOut="blink(this.id);"></div>

artimon

А чего тебе надо то?

Ivan826

Хочу простейшее выпадение сделать. При наводке на первый див, появляется второй. А второй убирается, когда мышка с него ушла. В IE всё нормально, мозилла убирать его не хотит

Andr163

в файрфоксе пашет

mr82

В мозиле туго со слоем div и его стилями, сам столкнулся.
Тут думать надо. Может почитать на внешних форумах. Сам пока с этой проблемой не разобрался.
Единственный выход, который я пока вижу-определять браузер клиента, и в зависимости от него, либо делать эту фичу, либо полностью от неё отказываться. Т.е. оставить выпавшее меню, например.

Ivan826

Оно выпадает, но не исчезает в нужный момент.
И дело тут не в дивах. Как раз Firefox лучше всех дивы понимает

mr82

Получается, что обработка события onMouseOut не работает.
Браузер не понимает атрибута стиля display: none.
Попробуй посмотреть мануал по css. Там вроде что-то типа display: hidden было, может заработает.

stm7884696

в натуре... для разных браузеров надо использовать разные свойства : нон и хидден...
Та же самая фигня, ка и с указанием размеров в пикселях, в одних - просто число, а в других с единицами изсерени..

Ivan826

Не, display: hidden такого нету

artimon

visibility и display это две большие разницы

mr82

Знаю, я предлагаю метод возможного решения проблемы.

artimon

<html>
<head>
<style type="text/css">
div.menu {
background: red;
width: 50px;
height: 50px;
position: relative;
}
div.menu div {
background: green;
width: 50px;
height: 50px;
position: absolute;
top: 50px;
display: none;
}
div.menu.hover div {
display: block;
}

</style>
</head>
<body>
<div class="menu" onmouseover='this.className="menu hover"' onmouseout='this.className="menu"'>
<div></div>
</div>
</body>
</html>

UPD: глючит

stm7884696

поокуратней с пробелами и точками в именах классов и стилях...
тогда и глючить перестанет
Оставить комментарий
Имя или ник:
Комментарий: