jquery实现右键菜单插件


Posted in Javascript onMarch 29, 2015

今天开发一个项目的时候需要一个模拟鼠标右键菜单的功能。也就是在网页点击鼠标右键的时候不是弹出系统的菜单而是我们制定的内容。这样可以拓展右键的功能。实现过程不多说了,写出来的代码和效果如下:

js部分:

//创建右键菜单

var epMenu={

    create:function(point,option){

        var menuNode=document.getElementById('epMenu');

        if(!menuNode){

            //没有菜单节点的时候创建一个

            menuNode=document.createElement("div");

            menuNode.setAttribute('class','epMenu');

            menuNode.setAttribute('id','epMenu');

        }else $(menuNode).html('');//清空里面的内容

        

        $(menuNode).css({left:point.left+'px',top:point.top+'px'});

        for(var x in option){

            var tempNode=document.createElement("a");

            $(tempNode).text(option[x]['name']).on('click',option[x].action);

            menuNode.appendChild(tempNode);

        }

        

        $("body").append(menuNode);

    },

    destory:function(){

        $(".epMenu").remove();

    }    

};

css部分代码如下:

/*右键菜单*/

.epMenu{ width:120px; background:#f0f0f0; position:fixed; left:0; top:0; box-shadow:2px 2px 2px 2px #807878;}

.epMenu a{ display:block; height:25px; line-height:25px; padding-left:15px; border-top:1px solid #e0e0e0; border-bottom:1px solid #fff; font-family:微软雅黑; font-size:14px; cursor:default;}

.epMenu a:hover{ background:#fff;}

创建调用代码如下:

epMenu.create({left:500,top:500},[{name:'a1','action':addText},{name:'b222','action':addBtn},{name:'添加图片组件','action':addImage}]);

销毁调用代码如下:

epMenu.destory();

效果如下:

jquery实现右键菜单插件

调用说明:

创建:epMenu.create(point,option);

point   整数型,表示菜单的位置,相对浏览器左上角。

          示例:{left:100, top:500}

option json数组型,表示菜单项,name表示名称,action表示点击激发的动作。

          示例:[{name:'a1','action':addText},{name:'b222','action':addBtn},{name:'添加图片组件','action':addImage}]

销毁:epMenu.destory();

销毁不需要参数。

这玩意其实很简单!还可以扩展一下,比如添加图片,二级菜单等等。由于这次项目开发需求比较简单,就这么的吧。

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
关于jQuery UI 使用心得及技巧
Oct 10 Javascript
JS自动缩小超出大小的图片
Oct 12 Javascript
js模拟C#中List的简单实例
Mar 06 Javascript
JQuery 实现在同一页面锚点链接之间的平滑滚动
Oct 29 Javascript
JavaScript中数组添加值和访问值常见问题
Feb 06 Javascript
JS从一组数据中找到指定的单条数据的方法
Jun 02 Javascript
手机图片预览插件photoswipe.js使用总结
Aug 25 Javascript
JavaScript定义数组的三种方法(new Array(),new Array('x','y')
Oct 04 Javascript
vue组件发布到npm简单步骤
Nov 30 Javascript
web前端vue之CSS过渡效果示例
Jan 10 Javascript
微信小程序支付PHP代码
Aug 23 Javascript
vue权限问题的完美解决方案
May 08 Javascript
纯JavaScript实现的兼容各浏览器的添加和移除事件封装
Mar 28 #Javascript
jquery表单验证插件(jquery.validate.js)的3种使用方式
Mar 28 #Javascript
JQuery调用绑定click事件的3种写法
Mar 28 #Javascript
对Web开发中前端框架与前端类库的一些思考
Mar 27 #Javascript
Javascript优化技巧之短路表达式详细介绍
Mar 27 #Javascript
学习JavaScript编程语言的8张思维导图分享
Mar 27 #Javascript
JavaScript中的函数声明和函数表达式区别浅析
Mar 27 #Javascript
You might like
用PHP生成自己的LOG文件
2006/10/09 PHP
dedecms系统的广告设置代码 基础版本
2010/04/09 PHP
Session保存到数据库的php类分享
2011/10/24 PHP
php实现递归与无限分类的方法
2015/02/16 PHP
jQuery select控制插件
2009/08/17 Javascript
javascript实现分栏显示小技巧附图
2014/10/13 Javascript
Jquery实现地铁线路指示灯提示牌效果的方法
2015/03/02 Javascript
JavaScript数据结构与算法之栈详解
2015/03/12 Javascript
javascript实现可拖动变色并关闭层窗口实例
2015/05/15 Javascript
跟我学习javascript的浮点数精度
2015/11/16 Javascript
JS实现密码框根据焦点的获取与失去控制文字的消失与显示效果
2015/11/26 Javascript
jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用
2016/01/23 Javascript
jQuery解决IE6、7、8不能使用 JSON.stringify 函数的问题
2016/05/31 Javascript
jQuery mobile在页面加载时添加加载中效果 document.ready 和window.onload执行顺序比较
2016/07/14 Javascript
解决wx.onMenuShareTimeline出现的问题
2016/08/16 Javascript
node.js操作mongodb简单示例分享
2017/05/25 Javascript
vue.js单文件组件中非父子组件的传值实例
2018/09/13 Javascript
js中位运算的运用实例分析
2018/12/11 Javascript
jQuery实现的别踩白块小游戏完整示例
2019/01/07 jQuery
今天,小程序正式支持 SVG
2019/04/20 Javascript
基于vue-simple-uploader封装文件分片上传、秒传及断点续传的全局上传插件功能
2021/02/23 Vue.js
[02:20]DOTA2中文配音宣传片
2013/05/22 DOTA
Python的爬虫框架scrapy用21行代码写一个爬虫
2017/04/24 Python
Python 内置函数memoryview(obj)的具体用法
2017/11/23 Python
Python 使用type来定义类的实现
2019/11/19 Python
用Python画小女孩放风筝的示例
2019/11/23 Python
Python响应对象text属性乱码解决方案
2020/03/31 Python
tensorflow 动态获取 BatchSzie 的大小实例
2020/06/30 Python
解决redis与Python交互取出来的是bytes类型的问题
2020/07/16 Python
师范毕业生自荐信
2013/10/17 职场文书
教师年度考核自我鉴定
2014/01/19 职场文书
详细的大学生创业计划书模板
2014/01/27 职场文书
2016年优秀团支部事迹材料
2016/02/26 职场文书
不会写演讲稿,快来看看这篇文章!
2019/08/06 职场文书
如何利用Matlab制作一款真正的拼图小游戏
2021/05/11 Python
python unittest单元测试的步骤分析
2021/08/02 Python