假设我有两个独立的 div,A 和 B,它们在一个角处重叠:
+-----+
| |
| A |
| +-----+
+---| |
| B |
| |
+-----+
我想在鼠标离开时触发一个事件bothA和B。
我试过这个
$("#a, #b").mouseleave(function() { ... });
但如果鼠标离开任一节点,则会触发该事件。我希望一旦鼠标不在任何一个节点上就触发该事件。
是否有捷径可寻?我有一个想法,涉及全局变量来跟踪每个 div 上的鼠标状态,但我希望有更优雅的东西。
我一直遇到这个问题,如果它适合我正在做的事情,我的“快速修复”如下;
var timer;
$("#a, #b").mouseleave(function() {
timer = setTimeout(doSomething, 10);
}).mouseenter(function() {
clearTimeout(timer);
});
function doSomething() {
alert('mouse left');
}
小提琴:http://jsfiddle.net/adeneo/LdDBn/ http://jsfiddle.net/adeneo/LdDBn/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)