繁体   English   中英

滚动条触发的jQuery mouseleave文档

[英]Jquery mouseleave document triggered by scrollbar

$(document).ready(function(){
    $(document).mouseleave(function(){
        $('#desktop-subscribe-modal').modal('show');
    });
});

我试图在鼠标离开文档窗口时触发一个功能。 上面的代码在Firefox中工作正常,但在Chrome中,将鼠标悬停在页面滚动条上时会触发该代码。

有没有办法从mouseleave函数中排除滚动条?

好吧,我通过检查鼠标位置鼠标离开时触发这个问题得到周围。 我只需要在鼠标悬停在视口上方时触发它,因此我只需检查垂直位置是否小于0。

$(document).ready(function(){
    $(document).mouseleave(function(e){

        //Check mouse is above the viewport
        if(e.clientY < 0){
            $('#desktop-subscribe-modal').modal('show');    
        }

    });
});

滚动条从技术上讲在客户端窗口之外,因此所有浏览器都应这样做。 有些没有(实际上,FireFox是错误的,不是Chrome):)

但是,最好的解决方案是使用替换滚动条(我最喜欢“ 完美”滚动条 )。 这些使用页面内的元素,因此可以在所有浏览器上完成您想要的操作(看起来也很酷)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM