Есть вот такая страница
и скрипт с событием mouseout:
function onMouseOut(event) {
e = event.toElement || event.relatedTarget;
if (e.parentNode == this || e.parentNode.parentNode == this || e.parentNode.parentNode.parentNode == this ||
e == this) {
return;
}
alert('MouseOut');
// handle mouse event here!
};
document.getElementById("parent").addEventListener('mouseout',onMouseOut,true);
Мне необходимо сделать так, чтобы input при наведении на него указателя мыши не вызывал события onMouseOut элемента div. Добавление в условие четверного parentNode результата не даёт.
Ответ
Update: изначально напутал с направлением распространения событий. В вашем случае только так:
function onMouseOut(event) {
var event = event || window.event; // cross-browser event
var target = event.target || event.srcElement;
if (target.id === this.id) {
alert('MouseOut');
// handle mouse event here!
}
return;
}
Посмотреть пример (зеленая область - div#parent)
Комментариев нет:
Отправить комментарий