JavaScript onmouseover

时间:2012-08-20 22:55:37

标签: javascript

我有以下代码:

area = document.createElement('div');
drag = document.createElement('div');
body.appendChild(area);
area.appendChild(drag);

area.onmouseover = function () {
    console.log('entered');
}
area.onmouseout = function () {
    console.log('leaved');
}

问题是,当鼠标越过孩子拖动时,它计为进入和离开!

预览: http://s12.postimage.org/xopqous19/preview.gif

1 个答案:

答案 0 :(得分:1)

使用onmouseenteronmouseleave代替,不受冒泡影响。

jQuery有两个版本的跨浏览器版本,名为mousenter()mouseleave()。另外,您可以参考this获取另一个不依赖外部库的跨浏览器实现。