如何使用Javascript从鼠标悬停事件中排除元素?

时间:2012-02-11 06:36:41

标签: javascript dom javascript-events event-handling

我基本上试图在浏览器中构建等效的firebug检查器。我目前在此示例中使用<body>作为容器:

container.onmouseover = function(ev) { inspect(ev.target); }

在inspect方法中,我重新定位并调整从事件目标返回的元素上的半透明固定定位元素。但这会导致mouseover事件随后检查覆盖元素本身。

我基本上希望事件处理程序完全忽略重叠元素(它只存在以提供视觉反馈)并继续为其下面检测到的元素触发onmouseover事件。这有意义吗?

1 个答案:

答案 0 :(得分:1)

如果您不必支持所有浏览器,则可以使用css属性pointer-events。设置为none时,将忽略所有事件。尝试在这个小提琴中切换指针事件,看看我的意思。

http://jsfiddle.net/zDygA/

Browser support

pointer-events:none;

我讨厌链接,但如果您需要支持IE,这是一篇很好的文章。

http://www.vinylfox.com/forwarding-mouse-events-through-layers/