Vue 鼠标移动判断是否在矩形框边框线上
在Vue中,可以通过绑定鼠标移动事件来判断鼠标是否在矩形框的边框线上。具体步骤如下:
- 在Vue模板中,给矩形框元素绑定鼠标移动事件:
<div class='rectangle' @mousemove='checkMouseOnBorder'></div>
- 在Vue组件的
methods中定义checkMouseOnBorder方法:
methods: {
checkMouseOnBorder(event) {
const rect = event.target.getBoundingClientRect();
const mouseX = event.clientX - rect.left;
const mouseY = event.clientY - rect.top;
const borderWidth = 2; // 边框宽度
const isOnBorder =
(mouseY < borderWidth) || // 上边框
(mouseY > (rect.height - borderWidth)) || // 下边框
(mouseX < borderWidth) || // 左边框
(mouseX > (rect.width - borderWidth)); // 右边框
if (isOnBorder) {
// 鼠标在边框线上
console.log('鼠标在边框线上');
} else {
// 鼠标不在边框线上
console.log('鼠标不在边框线上');
}
}
}
在checkMouseOnBorder方法中,首先使用getBoundingClientRect()获取矩形框的位置和尺寸信息,然后计算鼠标相对于矩形框左上角的偏移量(mouseX和mouseY)。最后,根据边框宽度判断鼠标是否在边框线上,如果是,则输出相应的信息。
请注意,上述代码中的.rectangle类需要根据实际情况进行调整,以匹配你的矩形框元素的类名或选择器。
原文地址: https://www.cveoy.top/t/topic/fvDn 著作权归作者所有。请勿转载和采集!