html鼠标悬停时候向前移动,html – 触发:悬停在移动元素上而不移动鼠标

这篇博客介绍了一个利用JavaScript实现的方法,实时检测鼠标是否位于一个动态移动的元素内部。通过监听鼠标移动事件和获取元素的边界坐标,可以在不移动鼠标时判断鼠标位置。当鼠标在元素内时,元素背景变为绿色;否则,背景变为红色。此外,还讨论了页面加载时如何处理鼠标初始位置的问题。
摘要由CSDN通过智能技术生成

我知道你不想要一个javascript解决方案.但是我不确定没有它的解决方案.当鼠标什么都不做时,您无法触发鼠标事件.

与此同时,我添加了一个带有javascript的解决方案,因为它可以帮助其他人使用javascript解决方案搜索答案并登陆此问题.

鼠标移动时的最后一个坐标存储为变量x和y.可以使用Element.getBoundingClientRect()随时找到该框的坐标.可以将用于查看鼠标指针是否位于框内的功能设置为以任何选定的间隔运行.这将根据每种情况进行调整.

唯一的问题是打开此页面时是否完全没有移动鼠标.

var x = 0;

var y = 0;

var box = document.querySelector("#box");

document.onmousemove = function(e){

x = e.pageX;

y = e.pageY;

}

setInterval(findMouse, 50);

function findMouse(){

// Looking for the updated coordinates of the box

var movingBox = box.getBoundingClientRect();

if( x>=movingBox.left && x<=movingBox.right

&& y>=movingBox.top && y<=movingBox.bottom)

document.getElementById("box").style.backgroundColor = "green";

else

document.getElementById("box").style.backgroundColor = "red";

}

#box {

animation: scroll 2s linear infinite;

width: 100px;

height: 100px;

background: red;

}

#box:hover {

background: green;

}

@keyframes scroll {

from {transform: none;}

to {transform: translateX(400px);}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值