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 相关文章推荐
Extjs EditorGridPanel中ComboBox列的显示问题
Jul 04 Javascript
iframe调用父页面函数示例详解
Jul 17 Javascript
jquery+javascript编写国籍控件
Feb 12 Javascript
jQuery选择器源码解读(七):elementMatcher函数
Mar 31 Javascript
对JavaScript的全文搜索实现相关度评分的功能的方法
Jun 24 Javascript
JQuery ztree 异步加载实例讲解
Feb 25 Javascript
Bootstrap select实现下拉框多选效果
Dec 23 Javascript
JS中传递参数的几种不同方法比较
Jan 20 Javascript
值得收藏的vuejs安装教程
Nov 21 Javascript
javascript/jquery实现点击触发事件的方法分析
Nov 11 jQuery
使用JS实现鼠标放上图片进行放大离开实现缩小功能
Jan 27 Javascript
一篇文章了解正则表达式的替换技巧
Feb 24 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
PHP中获取时间的下一周下个月的方法
2014/03/18 PHP
php函数mkdir实现递归创建层级目录
2016/10/27 PHP
Yii2框架实现利用mpdf创建pdf文件功能示例
2019/02/08 PHP
javascript 在firebug调试时用console.log的方法
2012/05/10 Javascript
自己写了一个展开和收起的多更能型的js效果
2013/03/05 Javascript
在javascript中关于节点内容加强
2013/04/11 Javascript
详细解读AngularJS中的表单验证编程
2015/06/19 Javascript
纯JS实现本地图片预览的方法
2015/07/31 Javascript
javascript淘宝主图放大镜功能
2016/10/20 Javascript
深入理解vue-loader如何使用
2017/06/06 Javascript
JS+Canvas绘制动态时钟效果
2017/11/10 Javascript
微信小程序实现默认第一个选中变色效果
2018/07/17 Javascript
JavaScript ES6箭头函数使用指南
2018/12/30 Javascript
vue2.0中set添加属性后视图不能更新的解决办法
2019/02/22 Javascript
vue组件之间通信方式实例总结【8种方式】
2019/02/22 Javascript
2020淘宝618理想生活列车自动领喵币js脚本的代码
2020/06/02 Javascript
vue.js click点击事件获取当前元素对象的操作
2020/08/07 Javascript
微信小程序组件生命周期的踩坑记录
2021/03/03 Javascript
[16:04]DOTA2海涛带你玩炸弹 9月5日更新内容详解
2014/09/05 DOTA
[03:23:49]2016.12.17日完美“圣”典全回顾
2016/12/19 DOTA
[01:23]2019完美世界全国高校联赛(春季赛)合肥全国总决赛
2019/06/10 DOTA
python中使用xlrd、xlwt操作excel表格详解
2015/01/29 Python
Pycharm学习教程(7)虚拟机VM的配置教程
2017/05/04 Python
django创建简单的页面响应实例教程
2019/09/06 Python
python GUI库图形界面开发之PyQt5信号与槽基础使用方法与实例
2020/03/06 Python
css3实现顶部社会化分享按钮示例
2014/05/06 HTML / CSS
html5 datalist 选中option选项后的触发事件
2020/03/05 HTML / CSS
奥地利顶级内衣丝袜品牌英国站:Wolford英国
2016/08/29 全球购物
联想美国官方商城:Lenovo美国
2017/06/19 全球购物
教你打造完美的创业计划书
2014/01/06 职场文书
商业项目策划方案
2014/06/05 职场文书
学生违纪检讨书200字
2014/10/21 职场文书
重阳节简报
2015/07/20 职场文书
2016年五四青年节校园广播稿
2015/12/17 职场文书
Jupyter notebook 输出部分显示不全的解决方案
2021/04/24 Python
MySQL 用 limit 为什么会影响性能
2021/09/15 MySQL