JavaScript模拟鼠标右键菜单效果


Posted in Javascript onDecember 08, 2020

本文实例为大家分享了JavaScript模拟鼠标右键菜单的具体代码,供大家参考,具体代码如下

效果图:

JavaScript模拟鼠标右键菜单效果

具体代码:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>右键菜单</title>
 <style type="text/css">
  *{
   margin: 0;
   padding: 0;
  }
  #menu{
   width: 254px;
   /*background-color: #ccc;*/
   font-size: 12px;
   position: fixed;
   top: 0px;
   left: 0px;
   /*height: 240px;*/
   /*padding-left: 26px;*/
   padding-top: 2px;
   border:1px solid #ccc;
   display: none;
  }
  #menu li{
   list-style: none;
   line-height: 25px;
   margin-left: -1px;
   padding-left: 26px;
  }
  #menu li:hover{
   background-color: #4281f4;
   color: #fff;
  }
 </style>
</head>
<body>
  <ul id="menu">
   <li>返回(B)</li>
   <li>前进(F)</li>
   <li>从新加载(R)</li>
   <li>另存为(A)</li>
   <li>打印(P)</li>
   <li>查看网页源代码(V)</li>
   <li>查看网页信息(I)</li>
   <li>审查元素(N)</li>
  </ul>
  <script type="text/javascript">
  var menu = document.getElementById("menu");

  document.oncontextmenu =function(e){
   var e = e ||window.event;//兼容
   console.log(e.clientX,e.clientY);
   console.log(e);
   //单击显示div
   menu.style.display = "block";
   //设置定义
   //判断鼠标坐标是否大于视口宽度-块本身宽度
   var cakLeft = (e.clientX > document.documentElement.clientWidth - menu.offsetWidth)?(document.documentElement.clientWidth - menu.offsetWidth):e.clientX;
   var cakTop = (e.clientY > document.documentElement.clientHeight - menu.offsetHeight)?(document.documentElement.clientHeight - menu.offsetHeight):e.clientY;
   menu.style.left = cakLeft + "px";
   menu.style.top = cakTop + "px";

  return false;
  }

   menu.onclick = function(e) {
  var e = e || window.event;
  e.cancelBubble = true;
  //阻止冒泡。
 }
  document.onclick = function() {
  menu.style.display = "none";
 }
  
  </script>
</body>
</html>

希望本文所述对大家学习javascript程序设计有所帮助。

Javascript 相关文章推荐
autoIMG 基于jquery的图片自适应插件代码
Mar 12 Javascript
JQuery插件iScroll实现下拉刷新,滚动翻页特效
Jun 22 Javascript
js获取域名的方法
Jan 27 Javascript
jQuery实现响应鼠标滚动的动感菜单效果
Sep 21 Javascript
静态页面html中跳转传值的JS处理技巧
Jun 22 Javascript
vue.js树形组件之删除双击增加分支实例代码
Feb 28 Javascript
使用ionic(选项卡栏tab) icon(图标) ionic上拉菜单(ActionSheet) 实现通讯录界面切换实例代码
Oct 20 Javascript
浅谈Angular文字折叠展开组件的原理分析
Nov 24 Javascript
vue兄弟组件传递数据的实例
Sep 06 Javascript
详解Js里的for…in和for…of的用法
Mar 28 Javascript
JQuery Ajax跨域调用和非跨域调用问题实例分析
Apr 16 jQuery
js实现简单选项卡制作
Aug 05 Javascript
javascript实现移动端上的触屏拖拽功能
Mar 04 #Javascript
基于zepto的移动端轻量级日期插件--date_picker
Mar 04 #Javascript
基于Javascript实现二级联动菜单效果
Mar 04 #Javascript
jquery ajax双击div可直接修改div中的内容
Mar 04 #Javascript
js实现文字滚动效果
Mar 03 #Javascript
JavaScript使ifram跨域相互访问及与PHP通信的实例
Mar 03 #Javascript
JQuery日期插件datepicker的使用方法
Mar 03 #Javascript
You might like
使用Composer安装Yii框架的方法
2016/03/15 PHP
php similar_text()函数的定义和用法
2016/05/12 PHP
Ajax和PHP正则表达式验证表单及验证码
2016/09/24 PHP
PHP实现的激活用户注册验证邮箱功能示例
2017/06/06 PHP
phpStudy2016 配置多个域名期间遇到的问题小结
2017/10/19 PHP
php+ajax实现仿百度查询下拉内容功能示例
2017/10/20 PHP
javascript 24小时弹出一次的代码(利用cookies)
2009/09/03 Javascript
jQuery Study Notes学习笔记 (二)
2010/08/04 Javascript
Firefox中beforeunload事件的实现缺陷浅析
2012/05/03 Javascript
js判断变量是否未定义的代码
2020/03/28 Javascript
jQuery中 noConflict() 方法使用
2013/04/25 Javascript
chrome下img加载对height()的影响示例探讨
2014/05/26 Javascript
javascript数据类型验证方法
2015/12/31 Javascript
基于jQuery实现点击弹出层实例代码
2016/01/01 Javascript
详解jQuery简单的表单应用
2016/12/16 Javascript
Angular2中如何使用ngx-translate进行国际化
2017/05/21 Javascript
vue.js将时间戳转化为日期格式的实现代码
2018/06/05 Javascript
Node.js Koa2使用JWT进行鉴权的方法示例
2018/08/17 Javascript
vue服务端渲染页面缓存和组件缓存的实例详解
2018/09/18 Javascript
微信小程序入门之广告条实现方法示例
2018/12/05 Javascript
jqGrid表格底部汇总、合计行footerrow处理
2019/08/21 Javascript
谈谈如何手动释放Python的内存
2016/12/17 Python
Python的numpy库中将矩阵转换为列表等函数的方法
2018/04/04 Python
Python比较2个时间大小的实现方法
2018/04/10 Python
pandas通过索引进行排序的示例
2018/11/16 Python
500行Python代码打造刷脸考勤系统
2019/06/03 Python
深入浅析Python中的迭代器
2019/06/04 Python
python开头的coding设置方法
2019/08/08 Python
财务部总监岗位职责
2014/03/12 职场文书
2014最新房贷收入证明范本
2014/09/12 职场文书
考察邀请函范文
2015/01/31 职场文书
2015庆祝七一建党节94周年活动总结
2015/03/20 职场文书
2015年质检工作总结
2015/05/04 职场文书
创业计划书之宠物店
2019/09/19 职场文书
在JavaScript中如何使用宏详解
2021/05/06 Javascript
小程序wx.getUserProfile接口的具体使用
2021/06/02 Javascript