当前位置: 首页 > news >正文

利用element实现简单右键

利用element-plus中的el-menu实现简单右键

实现如下

<template><main class="mainClass"  @contextmenu="showMenu($event)"> </main><el-menu:default-active="1"class="el-menu-demo"mode="vertical":collapse="isCollapse"v-show="menuShow"@close="hideMenu"@open="openItem"ref="menuRef":style="{ left: left + 'px', top: top + 'px' }"><el-menu-item index="1">Processing Center</el-menu-item><el-sub-menu index="2"><template #title>Workspace</template><el-menu-item index="2-1">item one</el-menu-item><el-menu-item index="2-2">item two</el-menu-item><el-menu-item index="2-3">item three</el-menu-item></el-sub-menu></el-menu></template><script setup>import { watch ,ref } from 'vue';const activeIndex = ref('0')
const menuShow = ref(false)
const isCollapse = ref(true)
const menuRef = ref(null)
const left = ref(0)
const top = ref(0)function hideMenu()
{menuShow.value = false;
}
function openItem(index, indexPath)
{console.log(index, indexPath)
}function showMenu(e)
{menuShow.value = true;left.value = e.clientX+1;top.value = e.clientY+1;//阻止默认行为e.preventDefault();
}//监听menuShow的变化,当它为true时,给body绑定一个点击事件,当点击时,隐藏menu
watch(menuShow,(newValue, oldValue) => {if(newValue){document.body.addEventListener('click', hideMenu)} else {document.body.removeEventListener('click', hideMenu)}
})</script><style scoped>
.mainClass
{width: 500px;height: 500px;background-color: #f0f0f0;
}
.el-menu-demo
{position: absolute;left: 0;top: 0;z-index: 100;width: 120px;/* background-color: rgb(167, 184, 184); */
}
</style>

推荐一个 v-contextmenu (cybernika.net)

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 某安全厂商外包安服工程师面试
  • css绘制下雨的云朵
  • 解决mysql5.7版本中,子查询order by后,对子查询进行group by分组获取最新记录无效的问题
  • LINQ(二) —— 流式语句
  • 【Unity Shader入门精要 第10章】高级纹理(一)
  • 音视频开发—音频相关概念:数模转换、PCM数据与WAV文件详解
  • 一、Nginx详解和安装
  • 翻译《The Old New Thing》- How do I mark a shortcut file as requiring elevation?
  • 微信小程序毕业设计-跑腿系统项目开发实战(附源码+演示视频+LW)
  • 青蛙跳台阶问题
  • [备忘.经验总结]特例问题通用问题,分而治之
  • 手机App收集个人信息,用户是否有权拒绝?
  • 所有平台均可发布,矩阵操作+工具+素材,自动混剪8090后怀旧视频
  • 牛客循环5.27
  • EPBU/MOBI转PDF
  • [ JavaScript ] 数据结构与算法 —— 链表
  • angular2开源库收集
  • classpath对获取配置文件的影响
  • Git 使用集
  • JavaScript学习总结——原型
  • JavaScript中的对象个人分享
  • MyEclipse 8.0 GA 搭建 Struts2 + Spring2 + Hibernate3 (测试)
  • React 快速上手 - 07 前端路由 react-router
  • Redis提升并发能力 | 从0开始构建SpringCloud微服务(2)
  • vue2.0项目引入element-ui
  • Wamp集成环境 添加PHP的新版本
  • 阿里云应用高可用服务公测发布
  • 等保2.0 | 几维安全发布等保检测、等保加固专版 加速企业等保合规
  • 我感觉这是史上最牛的防sql注入方法类
  • 译米田引理
  • 7行Python代码的人脸识别
  • ​【C语言】长篇详解,字符系列篇3-----strstr,strtok,strerror字符串函数的使用【图文详解​】
  • ​LeetCode解法汇总1276. 不浪费原料的汉堡制作方案
  • ​水经微图Web1.5.0版即将上线
  • #window11设置系统变量#
  • (C++17) optional的使用
  • (二)springcloud实战之config配置中心
  • (附源码)流浪动物保护平台的设计与实现 毕业设计 161154
  • (几何:六边形面积)编写程序,提示用户输入六边形的边长,然后显示它的面积。
  • (每日一问)设计模式:设计模式的原则与分类——如何提升代码质量?
  • (三) prometheus + grafana + alertmanager 配置Redis监控
  • (十七)Flink 容错机制
  • (四)linux文件内容查看
  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战
  • (小白学Java)Java简介和基本配置
  • (一)u-boot-nand.bin的下载
  • (转)AS3正则:元子符,元序列,标志,数量表达符
  • (自适应手机端)行业协会机构网站模板
  • .bat批处理(十一):替换字符串中包含百分号%的子串
  • .locked1、locked勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .NET 某和OA办公系统全局绕过漏洞分析
  • .net之微信企业号开发(一) 所使用的环境与工具以及准备工作
  • @RequestParam详解
  • [100天算法】-x 的平方根(day 61)
  • [AX]AX2012 R2 出差申请和支出报告