父mousenter / mouseleave事件仅针对子项启动

时间:2013-05-12 14:03:12

标签: javascript jquery mouseenter mouseleave

考虑以下小提琴:Fiddle

如何从父级div(类outer)获取的事件不是来自其子级?

1 个答案:

答案 0 :(得分:0)

这是正确的行为:您在父div上捕获了该事件,但事件的实际发送者(即触发它的元素)是内部div(可能是因为那里不是像@squint所说的父和内部div之间的空间。这就是e.target的用途。事件处理程序上下文中的this属性总是为您提供处理事件的元素。

$('.outer').on('mouseenter',function(e){alert($(this).attr('class'));});

JSFIddle:http://jsfiddle.net/tRP2k/3/

阅读本文了解详情&示例:http://api.jquery.com/event.target/