我使用下面的函数(在this really helpful post找到)来检测鼠标是否离开了窗口:鼠标缓慢移出窗口时无法正常工作 - 解决方法?
var addEvent = function (obj, evt, fn)
{
if (obj.addEventListener)
{
obj.addEventListener(evt, fn, false);
}
else if (obj.attachEvent)
{
obj.attachEvent("on" + evt, fn);
}
};
addEvent(document, "mouseout", function (e)
{
e = e ? e : window.event;
var from = e.relatedTarget || e.toElement;
if (!from || from.nodeName == "HTML")
{
console.log("left the window");
}
});
然而,当鼠标离开该窗口确实缓慢,或当鼠标实在是这是不工作在窗户离开窗户之前靠近窗户的边界。
是否有解决方法,使用jQuery或纯Javascript?
不,这是行不通的。由于事件传播,我相信,它将鼠标悬停在文档上时将所有内容都检测为鼠标移动。不幸的是,jQuery的用户并没有这样做。 –
我添加了一个小提琴演示,显示这个工程。 – Bic
在真实条件下尝试。在我们现在的页面上(它有jQuery)。它不工作。 –