Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 鼠标离开视口时JS/Jquery触发?_Javascript_Jquery_Firefox_Mouseleave - Fatal编程技术网

Javascript 鼠标离开视口时JS/Jquery触发?

Javascript 鼠标离开视口时JS/Jquery触发?,javascript,jquery,firefox,mouseleave,Javascript,Jquery,Firefox,Mouseleave,当鼠标离开视口时,如何触发函数 我从“html”中收听“mouseleave”事件。 但在firefox中,“mouseleave”也会在两种情况下触发。 1.是当警报弹出时(我现在通过添加模糊/聚焦侦听器来解决) 2.当我右键单击页面时,鼠标移动到显示菜单 似乎firefox将此行为视为“mouseleave”,甚至我的鼠标仍在页面中 这是我的密码 $('html').bind('mouseleave',bouncehandler); var visted = 1; var bouncehan

当鼠标离开视口时,如何触发函数

我从“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);
    }
});
$('html').bind('mouseleave',bouncehandler);
var-visted=1;
var bouncehandler=函数(e){
var yheight=$(window.height();

如果(e.pageX,则只能在de视口中获取鼠标位置和任何鼠标事件

您可以设置浏览器关闭时要执行的函数,如下所示:

function confirmExit(){
    alert("confirm exit is being called");
    return false;
}

window.onbeforeunload = confirmExit;

您只能在视口中捕获UI事件,而不能在视口之外捕获任何事件,如浏览器URL输入框或刷新按钮等。这听起来可能会导致一些非常烦人的行为和糟糕的用户体验。您可能需要后退一步,重新思考您试图完成的任务。@Lokase:实际上,我需要在鼠标离开时触发我喜欢视口。(对不起,我没有具体命名)@jbabey:我同意这很烦人。但这是一次性活动,就像顾客离开我们的电子商务页面时赠送优惠券一样。