今天分享一个,单击鼠标右键弹出自定义菜单,选中不同菜单选项,实现其对应功能

    首先先自已定义一个菜单

    <div id="menu"><ul><li>添加</li><li>删除</li><li>修改</li></ul></div>

  对菜单进行简单的样式设置,并且设置为隐藏状态

    #menu {width: 80px;background: #CCC;position: absolute;display: none;}

 主体区域的内容代码

    <div id="content">前端通常是指网站的表现层和结构层。因此前端技术一般分为前端设计和前端开发,前端设计一般可以理解为网站的视觉设计,前端开发则是网站的前台代码实现,现在最新的高级版本HTML5、CSS3,以及SVG等。HTML、CSS、JavaScript是前端开发中最基本也是最必须的三个技能。前端的开发中,在页面的布局时,HTML将元素进行定义,CSS对展示的元素进行定位,再通过JavaScript实现相应的效果和交互。虽然表面看起来很简单,但这里面需要掌握的东西绝对不会少。在进行开发前,需要对这些概念弄清楚、弄明白,这样在开发的过程中才会得心应手。</div>

  在这个content容器里实现鼠标的右键打开菜单功能,主要的js代码如下

<script>    // 获取当前的元素var content = document.getElementById("content");      content.oncontextmenu = function (ev) {//阻止鼠标的默认事件ev.preventDefault();            //做一些兼容性的处理var ev = ev || event;var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;menu.style.display = "block";menu.style.left = ev.clientX + "px";//当滑动滚动条时也能准确获取菜单位置menu.style.top = ev.clientY + scrollTop + "px";// return false;}// 事件委托的方式 实现自定义菜单的功能var ul = document.querySelector('ul')ul.onclick = function (e) {var t = e.targetif (t.innerText == '添加') {输入你想实现的功能代码,并且点击后把菜单隐藏menu.style.display = "none";}}       </script>

  通过事件委托,判断每次点击菜单的内容,写出相应的逻辑代码,完成相应的功能。

contextmenu事件支持所有 HTML 元素,这意味者你可以给不同的元素,自定义不同的右键菜单。

转载于:https://www.cnblogs.com/zhige-1/p/11097044.html

js实现右键单击打开自定义的菜单相关推荐

  1. 鼠标左键单击时使用纯js触发右键单击

    鼠标左键单击时使用纯js触发右键单击 onClick={e => {// 模拟右键点击const { clientX, clientY } = econst rightFun = new Mou ...

  2. Qt编程之右键单击QTreeWidgetItem弹出菜单

    其实有这个需求很好理解,就是我有个project manager,上面的TreeWidgetItem都表示一个工程,我需要右键创建新的工程,或者删除.这个在很多普通软件中也见得多.在弹出的菜单中加入相 ...

  3. 使用Bootstrap制作右键单击自定义菜单

    我们可以轻松地通过右键单击创建一个漂亮的自定义菜单. 让我们创建一个div右键单击启用自定义菜单. <div class="col-lg-6 bg-info" id=&quo ...

  4. java 右键卡死_为什么右键单击不适用于Java应用程序?

    小编典典 右键单击效果很好-在Swing中,不要获取您在其他应用中习惯的上下文菜单是很正常的.如果您希望有一个右键单击打开的弹出菜单,例如具有剪切/复制/粘贴操作- 您必须自己实现.我在我的应用程序中 ...

  5. 【电脑Windows日常】如何在 Windows 11 中自定义右键单击上下文菜单、自定义或者删除右键菜单的选项,包括桌面、文件夹和文件——详细教程(5个方法)

    前言 虽然许多人喜欢Windows 11 的简化右键单击上下文菜单,但有些人对截断的菜单不太满意.让我们看看一些根据您的喜好对其进行自定义的方法. 而且,很多默认的应用会使得右键菜单非常臃肿,需要进一 ...

  6. Excel(VBA)自定义右键单击菜单以启动宏(示例代码)

    主要介绍 Excel(VBA)自定义右键单击菜单以启动宏(示例代码)以及相关的经验技巧 THISWORKBOOK (paste into ThisWorkbook, macros that open ...

  7. 右键脚本html,js实现右键自定义菜单

    本文实例为大家分享了右键自定义菜单的具体代码,供大家参考,具体内容如下 #menu { height: 200px; width: 50px; border: 1px solid gray; back ...

  8. electron Tary托盘、主菜单、右键单击菜单出现

    main.js const { app, BrowserWindow, Menu } = require('electron') const path = require('path')//引入主菜单 ...

  9. 【jQuery】smartMenu右键自定义上下文菜单插件(似web QQ)

    DEMO: http://sources.ikeepstudying.com/menu-mail-qq/ 一.这是什么样的一个插件 我们都知道,默认状态下,我们右键web页面,会出现一个上下文菜单,例 ...

最新文章

  1. 数位DP 回文序列 POJ-3280 Cheapest Palindrome
  2. mysql数据库使用
  3. IoU 判断矩形区域重叠
  4. 交大世界大学排名 计算机专业,2018考研:计算机专业全球院校排名公布,上海交通大学竟排第一?...
  5. 手机端html表格,jQuery Mobile 表格
  6. python 程序停止打印日志_停止 Spring Boot 服务的几种优雅姿势
  7. mysql varchar(20)_MySQL中采用类型varchar(20)和varchar(255)对性能上的影响
  8. 第二章 寄存器基础概念
  9. 冠军方案 | 第二届中国“高分杯”美丽乡村大赛第一名总结
  10. 用了这么久 IDEA,你真熟悉它的自动补全功能吗?
  11. js 点击闭包_【新年跳槽必备】2020最新(前端原生JS专题)面试题 速领!
  12. [Jobdu] 题目1037:Powerful Calculator
  13. 从零搭建自己的SpringBoot后台框架(十三)
  14. OpenCV之图像二值化
  15. matlab网格划分提取坐标,ANSYS-划分网格后导出单元和结点坐标等信息
  16. Fedora9虚拟机下与windows共享文件
  17. 【保研夏令营经验贴】2021复旦大学计算机科学技术学院
  18. 中文字符串是怎么比较大小的?
  19. mysql删除密码代码_mysql 用户新建、受权、删除。密码修改
  20. js实现漂亮的雪花飘落效果

热门文章

  1. linux pdm 查看工具,linux系统监控工具
  2. STM32F7xx —— 输入
  3. CWinThread
  4. pycharm 2020 版取消鼠标悬停显示说明文档的方法
  5. 天池 在线编程 寻找字母(计数)
  6. LeetCode 316. 去除重复字母 / 1081. 不同字符的最小子序列(单调栈)
  7. 04.卷积神经网络 W1.卷积神经网络(作业:手动/TensorFlow 实现卷积神经网络)
  8. LeetCode MySQL 1321. 餐馆营业额变化增长(over窗口函数)
  9. LeetCode 388. 文件的最长绝对路径(不用栈,前缀和)
  10. LeetCode 1417. 重新格式化字符串