【JS】【Vue3】【React】获取鼠标位置的方法:JavaScript、Vue 3和React示例

news/2024/6/1 5:21:40 标签: javascript, vue.js, react.js

目录

  • 使用JavaScript原生方法
  • 在Vue 3中获取鼠标位置
  • 在React中获取鼠标位置

随着Web应用程序的复杂性不断增加,获取用户交互信息变得越来越重要。其中,获取鼠标位置是一项常见的任务,可以用于实现各种交互效果,如拖拽、悬停提示等。本文将探讨在JavaScript、Vue 3和React中获取鼠标位置的不同方法,并提供相应的示例。

使用JavaScript原生方法

在纯JavaScript中,我们可以使用事件监听器来获取鼠标位置。具体步骤如下:

javascript">document.addEventListener('mousemove', function(event) {
  const mouseX = event.clientX;
  const mouseY = event.clientY;
  
  console.log('鼠标位置:', mouseX, mouseY);
});

通过监听mousemove事件,我们可以获取鼠标在页面中的位置,并在控制台输出。

在Vue 3中获取鼠标位置

在Vue 3中,我们可以利用@mousemove指令来监听鼠标移动事件,并通过方法获取鼠标位置。具体示例代码如下:

<template>
  <div @mousemove="handleMouseMove">Move your mouse</div>
</template>

<script>javascript">
export default {
  methods: {
    handleMouseMove(event) {
      const mouseX = event.clientX;
      const mouseY = event.clientY;
      
      console.log('鼠标位置:', mouseX, mouseY);
    }
  }
};
</script>

在React中获取鼠标位置

在React中,我们可以使用事件监听器来获取鼠标位置,与JavaScript原生方法类似。下面是一个简单的React示例:

import React from 'react';

class MouseTracker extends React.Component {
  handleMouseMove(event) {
    const mouseX = event.clientX;
    const mouseY = event.clientY;
    
    console.log('鼠标位置:', mouseX, mouseY);
  }

  render() {
    return (
      <div onMouseMove=javascript language-javascript">{this.handleMouseMove}>Move your mouse</div>
    );
  }
}

export default MouseTracker;

跳转:【JS】【Vue3】【React】获取滚轮位置的方法:JavaScript、Vue 3和React示例


http://www.niftyadmin.cn/n/5394307.html

相关文章

Vue:vue的安装与环境的搭建

文章目录 环境搭建安装node.js&#xff08;比较简单&#xff09;安装Vue脚手架初始化启动 环境搭建 安装node.js&#xff08;比较简单&#xff09; 首先要安装node.js&#xff0c;进入官网下载即可。 更改安装路径&#xff0c;保持默认配置&#xff0c;一直点击下一步安装即可…

Vue组件声明注册之特别属性Props

1. 声明及使用Props props接受的标签属性是自读的 如果想要修改,用变量接收,接收之后在DOM上输出这个响应式变量 响应式变量接收与修改可以在计算属性中修改 ①使用<script setup>单文件组件 <template><!--直接调用模版时属性名称--><div>{{ 标签属性…

.NET Core Web API 之SignalR

SignalR是一个面向ASP.NET开发人员的库&#xff0c;它简化了将实时Web功能添加到应用程序中的过程。实时Web功能指的是服务器代码能够即时地将内容推送到连接的客户端&#xff0c;而不需要客户端每次都发送请求来获取新数据。 SignalR是一个集成的客户端与服务器库&#xff0c…

git bash:ls查看文件颜色全部为白色的解决方法(已解决)

方法一&#xff1a; 修改~/.bashrc文件或者~/.profile文件&#xff0c;添加如下内容 alias lsls --colorauto 然后 source一下&#xff0c;让修改配置生效 source ~/.profile 然后再ls OK了

glTF 添加数据属性(extras)

使用3D 模型作为可视化界面的一个关键是要能够在3D模型中添加额外的数据属性&#xff0c;利用这些数据属性能够与后台的信息模型建立对应关系&#xff0c;例如后台信息模型是opcua 信息模型的话&#xff0c;在3D模型中要能够包含OPC UA 的NodeId&#xff0c;BrowserName 等基本…

Django 模板使用方法

1.runoob.html 文件代码如下&#xff1a; <h1>{{ hello }}</h1> 2.修改HelloWorld/settings.py&#xff0c;修改 TEMPLATES 中的 DIRS 为 [os.path.join(BASE_DIR, templates)]&#xff0c;如下所示 settings.py 文件代码&#xff1a; TEMPLATES [ { …

C++面试基础 -操作系统-架构能力:如何高效利用CPU缓存

目录 局部性原理(Locality Principle) 数据结构的布局 缓存友好的算法 缓存大小和关联性 避免随机访问 使用缓存友好的数据结构 总结 高效利用CPU缓存是编写高性能C代码的关键之一。以下是一些在面试中可能会讨论到的方法。 局部性原理(Locality Principle) 时间局部性…

QT之项目经验(windows下的sqlite,c++开发)

目录 一、需要时间去磨练gui的调整和优化 1. 借鉴网上开源项目学习 2. gui的布局及调整是磨人的一件事情 3. gui的布局也是可以用组件复刻的 4. 耗时的设备树 二、多线程异步弹窗 三、定时任务动态变更设定 1.确定按钮触发 2.此处监听定时任务时间的改变 3.此处对改变做出具…