当鼠标离开视口时,如何触发功能?
我从“html”中听“mouseleave”事件。 但在Firefox中,“mouseleave”也会在两种情况下被触发。 1.当警报弹出时(我现在通过添加模糊/焦点监听器来解决它) 2.当我右键单击页面时,鼠标移动到显示菜单。
似乎firefox将此行为视为“mouseleave”,即使我的鼠标仍在页面中。
这是我的代码。
$('html').bind('mouseleave',bouncehandler);
var visted = 1;
var bouncehandler = function(e){
var yheight = $(window).height();
if(e.pageX<$('body').width() && e.pageY < yheight ){
alert('leaving');
$('html').unbind('mouseleave',bouncehandler);
}
}
$(window).blur(function(){
$('html').unbind('mouseleave',bouncehandler);
}).focus(function(){
if(visited){
$('html').bind('mouseleave',bouncehandler);
}
});
我该如何解决这个问题?感谢
答案 0 :(得分:0)
您只能在视口内获取鼠标位置和任何鼠标事件。
您可以设置浏览器关闭时要执行的功能,如下所示:
function confirmExit(){
alert("confirm exit is being called");
return false;
}
window.onbeforeunload = confirmExit;