Javascript 检测鼠标何时移动到元素外部

Javascript 检测鼠标何时移动到元素外部,javascript,Javascript,mousemove在鼠标移动到元素上时触发。如何检测鼠标何时在元素外部移动?换句话说,在页面上除了代码段中的div之外的任何位置。不是在鼠标离开时,而是在鼠标移动到元素外部时激发 constdiv=document.querySelector('div'); div.addEventListener('mousemove',function(){ document.body.classList.add('mouse-moving'); }); div{ 高度:200px; 宽度:300px;

mousemove
在鼠标移动到元素上时触发。如何检测鼠标何时在元素外部移动?换句话说,在页面上除了代码段中的div之外的任何位置。不是在鼠标离开时,而是在鼠标移动到元素外部时激发

constdiv=document.querySelector('div');
div.addEventListener('mousemove',function(){
document.body.classList.add('mouse-moving');
});
div{
高度:200px;
宽度:300px;
背景色:红色;
}
.鼠标移动{
背景颜色:绿色;
}

您可以使用
onmouseover
onmouseout

constdiv=document.querySelector('div');
div.onmouseover=()=>document.body.classList.add('mouse-moving');
div.onmouseout=()=>document.body.classList.remove('mouse-moving')
div{
高度:200px;
宽度:300px;
背景色:红色;
}
.鼠标移动{
背景颜色:绿色;
}

mouseleave
?!我想我解释得很糟糕。我想检测鼠标何时移出div。而不是何时离开div。页面上除div之外的任何位置?您始终可以将
mousemove
放在整个
body
标记上。但是,如果需要,请确保使用
节流
去盎司
。此外,您可以通过查询标签的
:hover
伪类来检查标签是否在鼠标下方。看看这个: