JQuery右键菜单插件ContextMenu使用指南


Posted in Javascript onDecember 19, 2014

插件下载地址:
http://www.trendskitchens.co.nz/jquery/contextmenu/jquery.contextmenu.r2.js

压缩版:
http://www.trendskitchens.co.nz/jquery/contextmenu/jquery.contextmenu.r2.packed.js

Jquery主页:   http://jquery.com/

通过此插件可以在不同的html元素内建立contextmenu,并且可以自定义样式.

<HTML>

 <HEAD>

  <TITLE> JQuery右键菜单 </TITLE>

  <script  src="jquery-1.2.6.min.js"></script>

  <script src="jquery.contextmenu.r2.js"></script>

 </HEAD>

 <BODY>

 <span class="demo1" style="color:green;">

    右键点此

 </span>

<hr />

<div id="demo2">

    右键点此

</div>

<hr />

<div class="demo3" id="dontShow">

  不显示

</div>

<hr />

<div class="demo3" id="showOne">

  显示第一项

</div>

<hr />

<div class="demo3" id="showAll">

  显示全部

</div>

<hr />

    <!--右键菜单的源-->

     <div class="contextMenu" id="myMenu1">

      <ul>

        <li id="open"><img src="folder.png" /> 打开</li>

        <li id="email"><img src="email.png" /> 邮件</li>

        <li id="save"><img src="disk.png" /> 保存</li>

        <li id="delete"><img src="cross.png" /> 关闭</li>

      </ul>

    </div>

    <div class="contextMenu" id="myMenu2">

        <ul>

          <li id="item_1">选项一</li>

          <li id="item_2">选项二</li>

          <li id="item_3">选项三</li>

          <li id="item_4">选项四</li>

        </ul>

   </div>

     <div class="contextMenu" id="myMenu3">

         <ul>

          <li id="item_1">csdn</li>

          <li id="item_2">javaeye</li>

          <li id="item_3">itpub</li>

        </ul>

    </div>

 </BODY>

 <script>

    //所有class为demo1的span标签都会绑定此右键菜单

     $('span.demo1').contextMenu('myMenu1', 

     {

          bindings: 

          {

            'open': function(t) {

              alert('Trigger was '+t.id+'\nAction was Open');

            },

            'email': function(t) {

              alert('Trigger was '+t.id+'\nAction was Email');

            },

            'save': function(t) {

              alert('Trigger was '+t.id+'\nAction was Save');

            },

            'delete': function(t) {

              alert('Trigger was '+t.id+'\nAction was Delete');

            }

          }

    });

    //所有html元素id为demo2的绑定此右键菜单

    $('#demo2').contextMenu('myMenu2', {

      //菜单样式

      menuStyle: {

        border: '2px solid #000'

      },

      //菜单项样式

      itemStyle: {

        fontFamily : 'verdana',

        backgroundColor : 'green',

        color: 'white',

        border: 'none',

        padding: '1px'

      },

      //菜单项鼠标放在上面样式

      itemHoverStyle: {

        color: 'blue',

        backgroundColor: 'red',

        border: 'none'

      },

      //事件    

      bindings: 

          {

            'item_1': function(t) {

              alert('Trigger was '+t.id+'\nAction was item_1');

            },

            'item_2': function(t) {

              alert('Trigger was '+t.id+'\nAction was item_2');

            },

            'item_3': function(t) {

              alert('Trigger was '+t.id+'\nAction was item_3');

            },

            'item_4': function(t) {

              alert('Trigger was '+t.id+'\nAction was item_4');

            }

          }

    });

    //所有div标签class为demo3的绑定此右键菜单

    $('div.demo3').contextMenu('myMenu3', {

    //重写onContextMenu和onShowMenu事件

      onContextMenu: function(e) {

        if ($(e.target).attr('id') == 'dontShow') return false;

        else return true;

      },

      onShowMenu: function(e, menu) {

        if ($(e.target).attr('id') == 'showOne') {

          $('#item_2, #item_3', menu).remove();

        }

        return menu;

      }

    });

 </script>

</HTML>

效果图:

JQuery右键菜单插件ContextMenu使用指南

很好玩很炫酷的功能吧,小伙伴们自己美化下,加入到自己的项目中去吧

Javascript 相关文章推荐
Javascript注入技巧
Jun 22 Javascript
jquery刷新页面的实现代码(局部及全页面刷新)
Jul 11 Javascript
使用jquery实现图文切换效果另加特效
Jan 20 Javascript
jQuery使用一个按钮控制图片的伸缩实现思路
Apr 19 Javascript
js代码实现的加入收藏效果并兼容主流浏览器
Jun 23 Javascript
js脚本实现数据去重
Nov 27 Javascript
jQuery过滤选择器经典应用
Aug 18 Javascript
使用DeviceOne实现微信小程序功能
Dec 29 Javascript
js实现百度登录框鼠标拖拽效果
Mar 07 Javascript
vue源码学习之Object.defineProperty 对数组监听
May 30 Javascript
react实现同页面三级跳转路由布局
Sep 26 Javascript
JS+CSS+HTML实现“代码雨”类似黑客帝国文字下落效果
Mar 17 Javascript
简单谈谈jQuery(function(){})与(function(){})(jQuery)
Dec 19 #Javascript
jQuery多级弹出菜单插件ZoneMenu
Dec 18 #Javascript
使用jquery菜单插件HoverTree仿京东无限级菜单
Dec 18 #Javascript
jQuery实现视频作为全屏幕背景
Dec 18 #Javascript
JS实现判断滚动条滚到页面底部并执行事件的方法
Dec 18 #Javascript
浅析jQuery EasyUI中的tree使用指南
Dec 18 #Javascript
JavaScript实现弹出子窗口并传值给父窗口
Dec 18 #Javascript
You might like
搜索引擎技术核心揭密
2006/10/09 PHP
JS与PHP向函数传递可变参数的区别实例代码
2011/05/18 PHP
php实现在限定区域里自动调整字体大小的类实例
2015/04/02 PHP
PHP快速排序quicksort实例详解
2016/09/28 PHP
php基于SQLite实现的分页功能示例
2017/06/21 PHP
laravel 多图上传及图片的存储例子
2019/10/14 PHP
jquery实现弹出层完美居中效果
2014/03/03 Javascript
你所未知的3种Node.js代码优化方式
2016/02/25 Javascript
jQuery图片切换动画特效
2016/11/02 Javascript
微信小程序 WebSocket详解及应用
2017/01/21 Javascript
jQuery插件Echarts实现的渐变色柱状图
2017/03/23 jQuery
jQuery实现的老虎机跑动效果示例
2018/12/29 jQuery
详解微信小程序-获取用户session_key,openid,unionid - 后端为nodejs
2019/04/29 NodeJs
浅谈Express.js解析Post数据类型的正确姿势
2019/05/30 Javascript
JS实现网页烟花动画效果
2020/03/10 Javascript
Vue自定义组件双向绑定实现原理及方法详解
2020/09/03 Javascript
[00:32]2018DOTA2亚洲邀请赛EG出场
2018/04/03 DOTA
python单线程实现多个定时器示例
2014/03/30 Python
Python写的Tkinter程序屏幕居中方法
2015/03/10 Python
Python绘制KS曲线的实现方法
2018/08/13 Python
Python Django框架单元测试之文件上传测试示例
2019/05/17 Python
python读取ini配置的类封装代码实例
2020/01/08 Python
Python如何获取Win7,Win10系统缩放大小
2020/01/10 Python
python读取与处理netcdf数据方式
2020/02/14 Python
Python爬虫防封ip的一些技巧
2020/08/06 Python
Omio美国:全欧洲低价大巴、火车和航班搜索和比价
2017/11/08 全球购物
英国森林假期:Forest Holidays
2021/01/01 全球购物
远程调用的原理
2014/07/05 面试题
会计应聘求职信范文
2013/12/17 职场文书
护士检查书
2014/01/17 职场文书
财经学院自荐信范文
2014/02/02 职场文书
2014年最新学校运动会广播稿
2014/09/17 职场文书
高二学年自我鉴定范文(2篇)
2014/09/26 职场文书
2015个人年度工作总结范文
2015/05/28 职场文书
廉洁自律证明
2015/06/24 职场文书
Redis实现分布式锁的五种方法详解
2022/06/14 Redis