Vue 鼠标事件合集,关于鼠标右键的处理方法(改写鼠标右键方法、自定义鼠标右键)

news/2025/2/8 9:46:30/

鼠标事件使用

@mousedown="canvasDown($event)"按下

事件合集

click       点击某个对象时触发
mousedown	鼠标按钮被按下时触发
mouseup	    鼠标按钮被松开时触发
mouseleave	当鼠标指针移出元素时触发
dblclick    双击时触发
mousemove	鼠标移动时触发,持续触发
mouseout	鼠标从某元素移开时触发
mouseover	鼠标移到某元素上时触发
mouseenter	鼠标移到某元素上时触发
contextmenu 右键触发

区分说明

mouseover   鼠标指针移入事件所绑定的元素或其子元素,都会触发该事件  
mouseenter  鼠标指针移入事件所绑定的元素时,会触发该事件

如果一个元素没有子元素,那么该元素绑定mouseover或者mouseenter两种事件效果没有区别,鼠标每次移入元素时都只会触发一次事件;
如果绑定了mouseover事件的元素存在子元素,那么,每次移入该元素时都会触发一次事件(包括从外部移入和从子元素移入),移入子元素时也会触发一次事件。

鼠标右键事件处理

方法1 contextmenu
    document.addEventListener("contextmenu", function (e) {e.preventDefault(); //阻止右键默认行为console.log('右键');// do something});
方法2 mousedown
    document.addEventListener("mousedown", function (e) {e.preventDefault();//此时阻止右键默认行为不生效,需要用方法1禁止该默认行为if (e.button == 0) {console.log("你按下了鼠标左键!");} else if (e.button == 1) {console.log("你按下了鼠标滚轮!");} else {console.log("您按下了鼠标右键!");}});

关于鼠标右键的更多应用

<template><div><div class="btn" @click.right="handleClick('1')">右键</div><div class="btn" @contextmenu="handleClick('2')">右键</div><div class="btn" @contextmenu.prevent="handleClick('3')">右键 阻止默认行为</div><div class="btn" @contextmenu="handleClicks($event)">右键 阻止默认行为</div><div class="btn" id="btn">右键 来自监听</div></div>
</template><script>
export default {mounted() {// 指定元素添加右键监听document.getElementById("btn").addEventListener("contextmenu", function (e) {e.preventDefault(); //阻止右键默认行为console.log("右键");});},methods: {handleClick(key) {console.log("右键", key);},handleClicks(e) {e.preventDefault(); //阻止右键默认行为console.log("右键", e);},},
};
</script>
<style scoped>
.btn {height: 30px;border: 1px solid #000;
}
</style>

http://www.ppmy.cn/news/1570297.html

相关文章

【iOS自动化】Xcode配置WebDriverAgent

WebDriverAgent 是 iOS 端自动化测试的工具&#xff0c;这里记录下 MacOS 环境 Xcode 如何配置 WebDriverAgent。 【重要】环境准备 ‼️ 注意&#xff1a;Xcode 版本需要支持对应的 iOS 版本&#xff0c;而 Xcode 版本又依赖 MacOS 版本&#xff1b;在开始部署前&#xff0c…

力扣240 搜索二维矩阵 ll

编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性&#xff1a; 每行的元素从左到右升序排列。每列的元素从上到下升序排列。 示例 1&#xff1a; 输入&#xff1a;matrix [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,…

探索从传统检索增强生成(RAG)到缓存增强生成(CAG)的转变

在人工智能快速发展的当下&#xff0c;大型语言模型&#xff08;LLMs&#xff09;已成为众多应用的核心技术。检索增强生成&#xff08;RAG&#xff09;&#xff08;RAG 系统从 POC 到生产应用&#xff1a;全面解析与实践指南&#xff09;和缓存增强生成&#xff08;CAG&#x…

CEF132 编译指南 Windows 篇 - 拉取 CEF 源码 (五)

1. 引言 获取 CEF 132 源码是开始编译工作的前提和关键步骤。在完成 depot_tools 的安装和配置后&#xff0c;我们需要通过正确的方式下载和同步 CEF 的源代码。由于 CEF 项目依赖于 Chromium 的大量组件&#xff0c;因此源码的获取过程需要特别注意同步策略和版本管理&#x…

文件基础IO

理解"文件" 1-1 狭义理解 文件在磁盘里磁盘是永久性存储介质&#xff0c;因此文件在磁盘上的存储是永久性的磁盘是外设&#xff08;即是输出设备也是输入设备&#xff09;磁盘上的文件 本质是对文件的所有操作&#xff0c;都是对外设的输入和输出简称IO 1-2 广义理…

前端工程化-vue项目

vue项目-创建 方法1. 命令行: vue create vue-projecto1 方法2. 图形化界面: vue ui 创建好项目后

15.<Spring Boot 日志>

本篇文章将记录我学习SpringBoot日志 1.日志文件的用途 2.SpringBoot日志文件的配置 3.用lombook依赖引入Slf4j注解&#xff0c;从而引入log对象。方便我们打印日志。 一、日志的作用 日志主要是为了发现问题、分析问题、定位问题。除此之外、日志还有许多其他的用途。 1.系统监…

网安学习xss和php反序列后的心得

网安学习xss和php反序列后的心得 xss和Php反序列化的相同和不同点 相同&#xff1a; 两者都依赖用户输入和用户控制的数据触发攻击用户输入的东西可能因为开发者没有过滤彻底被恶意执行 如插入jsp语句 html代码&#xff0c;php反序列之后使得代码嵌入服务器端之后接下来的用…