需要在区域内右击自定义菜单的DIV绑定contextmenu右击事件

<div   style="width:100% ; z-index: inherit;position: relative;margin:0 auto ;" align="center"  @contextmenu.prevent="rightClick">

<img  :src="dialogImg" style="width: 100%; " >

<div  :style="dialogPos.style" align="center" >{{dialogPos.position}}</div>

<div  :style="dialogPos.styleT" align="center" ></div>

</div>

触发rightClick方法

rightClick(MouseEvent) { // 鼠标右击触发事件

this.menuVisible = false; // 先把模态框关死,目的是 第二次或者第n次右键鼠标的时候 它默认的是true

this.menuVisible = true ; // 显示模态窗口,跳出自定义菜单栏

var menu = document.querySelector('#menu');

menu.style.left = MouseEvent.clientX-160 + 'px';

document.addEventListener('click', this.foo); // 给整个document添加监听鼠标事件,点击任何位置执行foo方法

menu.style.top = MouseEvent.clientY-100 + 'px'

},

foo() { // 取消鼠标监听事件 菜单栏

this.menuVisible = false;

document.removeEventListener('click', this.foo) // 要及时关掉监听,不关掉的是一个坑,不信你试试,虽然前台显示的时候没有啥毛病,加一个alert你就知道了

},

右键菜单模态框

<div v-show="menuVisible">

<ul id="menu" class="menu">

<a><li class="menu__item" style="margin-top: 3px;"  @click="JumpcarDynamicQuery">检索1</li></a>

<a><li class="menu__item"  @click="JumpcarCarStaticQuery">检索2</li></a>

<a><li class="menu__item"  @click="JumpDynamicQuery">检索3</li></a>

<a><li class="menu__item"  @click="JumpcarPasserDynamicQuery">检索4</li></a>

</ul>

</div>

右键菜单样式

.menu__item {

display: block;

line-height: 20px;

text-align: center;

/*margin-top: 10px;*/

}

.menu {

height: 85px;

width: 90px;

position: absolute;

border-radius: 10px;

border: 1px solid #999999;

background-color: #f4f4f4;

z-index: 99999;

padding-inline-start: 0px;

}

这样就可以啦。

VUE 鼠标右键自定义的更多相关文章

  1. js实现鼠标右键自定义菜单(弹出层),并与树形菜单(TreeView)、iframe合用(兼容IE、Firefox、Chrome)

    <table class="oa-el-panel-tree"> <tr> <td style="vertical-align: top; ...

  2. jQuery自定义Web页面鼠标右键菜单

    jQuery自定义Web页面鼠标右键菜单 右键菜单是固定的,很多时候,我们需要自定义web页面自定义菜单,指定相应的功能. 自定义的原理是:jQuery封装了鼠标右键的点击事件(“contextmen ...

  3. JavaScript自定义鼠标右键菜单

    下面为JavaScript代码 window.onload = function () { //好友列表 var f = 0; //判断指定id的元素在页面中是否存在 if (document.get ...

  4. 自定义鼠标右键(层叠式菜单:cascading menu)

    Author:KillerLegend From:http://www.cnblogs.com/killerlegend/p/3575391.html Date:Tuesday, February 1 ...

  5. 自定义鼠标右键(层叠式菜单:cascading menu)(文件系统右键、文件夹系统右键和桌面鼠标右键)

    转载:http://www.cnblogs.com/killerlegend/p/3575391.html 转载:http://www.cnblogs.com/shouce/p/5101001.htm ...

  6. JQuery模拟网页中自定义鼠标右键菜单

    题外话.......最近在开发一个网站项目的时候,需要用到网页自定义右键菜单,在网上看了各路前辈大神的操作,头晕目眩,为了达到目的,突然灵机一动,于是便有了这篇文章. 先放个效果图(沾沾自喜,大神勿喷 ...

  7. JavaScript 自定义html元素鼠标右键菜单

    自定义html元素鼠标右键菜单 实现思路 在触发contextmenu事件时,取消默认行为(也就是阻止浏览器显示自带的菜单),获取右键事件对象,来确定鼠标的点击位置,作为显示菜单的left和top值 ...

  8. Vue 监听鼠标左键 鼠标右键以及鼠标中键修饰符click.left&contextmenu&click.middle

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. js自定义鼠标右键菜单

    document.oncontextmenu = function(e) { return false; } document.onmousedown = function(e) { switch(e ...

随机推荐

  1. 第十六篇 nginx主配置文件参数解释

    # 指定拥有运行nginx权限的用户 #user nobody; # 指定开启的进程数,建议设置为CPU核心数 worker_processes ; # 指定全局错误日志级别,包括:debug/inf ...

  2. bugku 闪的好快

    这是一道二维码的题目.保存图片祭出神器StegSolve.然后Analysis->Frame Browser.这里发现是18张图.也就是18张图片. 我拿手机一个挨着一个扫的.扫出来的结果是SY ...

  3. docker-compose介绍及部署LNMP

    一.简介 Compose是用于定义和运行多容器Docker应用程序的工具,是docker的服务编排工具,主要应用于构建基于Docker的复杂应用,compose通过一个配置文件来管理多个docker容 ...

  4. queue 官方运用

    import threading import random,time import queue q_init = queue.Queue(maxsize=5) import logging logg ...

  5. JS-内置对象和方法

    1.Array数组对象unshift( )    数组开头增加功能:给数组开头增加一个或多个 参数:一个或多个 返回值:数组的长度 原数组发生改变 shift( )        数组开头删除一项功能 ...

  6. 09-Docker-Volumes数据管理

    目录 09-Docker-Volumes数据管理 参考 数据卷类型 数据卷操作 bind数据卷 volume数据卷 tmpfs数据卷 09-Docker-Volumes数据管理 Docker Vers ...

  7. GO学习之 安装Go语言及搭建Go语言开发环境

    一.下载 1.下载地址 Go官网下载地址:https://golang.org/dl/ Go官方镜像站(推荐):https://golang.google.cn/dl/ 2.版本的选择 Windows ...

  8. SQL语句,pymysql模块,sql注入问题

    一.完整版SQL语句的查询 select distinct post,avg(salary) from table where id > 1 group by post` having avg( ...

  9. 搭建robotframework环境

    1.安装rf 执行命令:pip install robotframework; 2.安装seleniumlibrary库 执行命令:pip install --upgrade robotframewo ...

  10. Spring_002 依赖注入方式实现

    继续写我们的第一个Spring程序,这次我们使用依赖注入的方式实现程序 第一步,建立我们的Spring_002程序,并在程序中添加BookDao.java.BookDaoImpl.java.BookS ...