cap*_*lam 46 javascript dom cross-browser dom-events
我注意到在Chrome和IE9中,对于onmouseout事件,有一个event.toElement属性(所以你可以确定鼠标现在指向哪个元素).
我在Firefox中找不到类似的属性.
不幸的是我无法使用jQuery来处理这些事件,我必须使用原生的js.
任何意见,将不胜感激.
Aza*_*lvi 38
用它来解决我的问题
event.target
Run Code Online (Sandbox Code Playgroud)
cap*_*lam 22
在Firefox中,它是event.relatedTarget https://developer.mozilla.org/en/DOM:event.relatedTarget#1003983
sim*_*omo 10
当我使用Jay的答案时,我遇到了一个问题,event.targetfirefox指向event.toElementchrome上目标的父元素.
在查看事件obj后,我发现event.originalEvent.target,它在firefox和chrome上都很好用.
实际event.currentTarget应该适用于Chrome,Firefox和IE
截至2014年,IE11不支持toElement,我查看了事件对象,发现target与toElement具有相同的数据.
也就是说,如果单击此事件触发的元素内的子元素,则子元素将成为"目标"并存储在此属性中.
触发事件的元素存储在currentTarget属性中.
请注意,我只测试了这个11,因此旧版本可能不支持这个.
因此,为了支持firefox ie和chrome(以及可能的其他人,必须使用polyfill,例如:
var target = e.toElement || e.relatedTarget || e.target || function () { throw "Failed to attach an event target!"; }
Run Code Online (Sandbox Code Playgroud)
哪里e是event