jq/js检测鼠标指针移动离开页面

通过 mouseout 鼠标事件,判断鼠标去往哪个元素

知识点:relatedTarget 事件属性


定义和用法

relatedTarget 事件属性返回与事件的目标节点相关的节点。

对于 mouseover 事件来说,该属性是鼠标指针移到目标节点上时所离开的那个节点。

对于 mouseout 事件来说,该属性是离开目标时,鼠标指针进入的节点。

对于其他类型的事件来说,这个属性没有用。

jq

javascript 复制代码
$(document).on('mouseout',function(e){
        if (!e) var e= window.event
        var to = e.relatedTarget || e.toElement
        if (!to || to.nodeName == "HTML") {
            console.log("离开窗口");
        }
    })

js

javascript 复制代码
document.body.addEventListener('mouseout', (e) => {
  if (!e) var e= window.event
  var to = e.relatedTarget || e.toElement
  if (!to || to.nodeName == "HTML") {
    console.log('离开页面')
  }
})
相关推荐
粥里有勺糖2 分钟前
视野修炼-技术周刊第127期 | Valdi
前端·javascript·github
前端世界28 分钟前
从零搭建 ASP.NET 单文件 Web 项目:一个能真用的 BookShop 管理页实战
服务器·前端·asp.net
码上成长39 分钟前
Vue Router 3 升级 4:写法、坑点、兼容一次讲透
前端·javascript·vue.js
BBB努力学习程序设计39 分钟前
响应式页面设计与实现:让网站适配所有设备的艺术
前端·html
百锦再1 小时前
第15章 并发编程
android·java·开发语言·python·rust·django·go
864记忆1 小时前
Qt QML 模块及其函数详解
开发语言·qt
IT从业者张某某1 小时前
less 工具 OpenHarmony PC适配实践
前端·microsoft·less
无敌最俊朗@1 小时前
C++ 对象布局之padding(填充字节)
开发语言·c++
共享家95271 小时前
高级IO-poll
开发语言·操作系统·io
Chiang木2 小时前
C++进阶:coroutine 协程
开发语言·c++·协程