Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   вопрос по вспливанию (https://javascript.ru/forum/events/6564-vopros-po-vsplivaniyu.html)

morfie 05.12.2009 21:04

вопрос по вспливанию
 
<div style="background:#CCC;width:200px;height:200px"

onmouseout="{ alert(event.type+'я вышел');}">

серый

<div style="background-color:#9C9;width:50px;height:50px"> зеленый </ div>
</div>








должен выводиться сообщениа 'я вышел' только когда мышка за div - серый,

но оно выводится даже когда мышка на div - зеленый.


как это исправить и чего так?

subzey 06.12.2009 03:13

Bubbling.

morfie 06.12.2009 09:56

я это читал.
только не понимаю как вспливання в моем случае перекрыть

subzey 06.12.2009 11:27

А и не надо. Для того, чтобы гасить события, вызванные пользователем, нужны серьезные основания.

Вооружитесь (e.srcElement||e.target) и (e.relatedTarget||e.toElement) и проверяйте, какой элемент вызвал событие и какой элемент с ним связан.
(где e — первый аргумент обработчика, объект типа Event)

И, например, если вызвавшиий mouseout — синий див, а приемник — зеленый (т.е., курсор переместился с синего на зеленый), то не делать ничего. А если вызывал синий див, а приемник вообще не находится внутри синего дива, то говорим: "Я вышел!"

morfie 06.12.2009 12:09

спасибо
все получилоcя


Часовой пояс GMT +3, время: 14:26.