`
Nullin
  • 浏览: 25403 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

简单的右键菜单

阅读更多

js代码,需要js库支持,也可以自己写成js的

var contextMenuPanel='<div id ="contextMenu" style="display:none;position: absolute;z-index: 1000; " class="tan_divc"></div>';  //右键菜单div
var eventOwner;

//将菜单绑定到元素上 也就是某id下的tag上  例如 id=aa 的div 下面有 span 那么bindContext("aa","span"),就可以让用户点击aa下的span时显示右键菜单
function bindContext(id,tag){
$("body").append(contextMenuPanel);
$("#"+id+" "+tag||"").each(function(){
$(this).mousedown(function(e){
	 		e=e||window.event;
 	 		e.stopPropagation(); //组织冒泡
	 		if(e.button==2){
	 			eventOwner=this;
 	 			showContextMenu(e);
 	 		}
 	})})
}  	

 //显示菜单
 function showContextMenu(event){
 	$("#contextMenu").fadeIn(400);//显示并确定菜单位置
    $("#contextMenu").css("left",event.clientX + document.body.scrollLeft - document.body.clientLeft);
    $("#contextMenu").css("top",event.clientY + document.body.scrollTop - document.body.clientTop );
    
 }
 function doSth(){
 	hideContextMenu();
 }
 function hideContextMenu(obj){
 	$("#contextMenu").fadeOut(400);
 }

 //初始化菜单 参数传入 json 数组  格式{doFun:'执行方法名(参数)',title:'标题'}
 function initContextMenu(id,tag,jsonArr){
	 bindContext(id,tag); //将菜单绑定到元素上 
	 if(jsonArr==null){
	 	jsonArr=[
	 	{doFun:"doSth(this)",title:"新增"},
	 	{doFun:"doSth(this)",title:"修改"},
	 	{doFun:"doSth(this)",title:"删除"},
	 	{doFun:"doSth(this)",title:"上移"},
	 	{doFun:"doSth(this)",title:"下移"},
	 	{doFun:"doSth(this)",title:"升级"},
	 	{doFun:"doSth(this)",title:"降级"}];
	 }
	 var context="<ul>";
	  //拼装菜单
	 for(var i=0;i<jsonArr.length;i++) 
	 	context+='<li><a href="javascript:void(0)" onclick="'+jsonArr[i]["doFun"]+';doSth();return false;">'+jsonArr[i]["title"]+'</a></li>'
	 context+="</ul>"
	 //将拼装好的菜单拼入
	$("#contextMenu").html(context);
 }

 简单的样式调整:

@CHARSET "UTF-8";
ul,li{ margin:0px; padding:0px; list-style:none}
h1,h2,h3,h4,h5,h6{ margin:0px; padding:0px;}
dl,dd,dt{ margin:0px; padding:0px;}
img{ border:none}
p{ margin:0px;}
th,td{ font-size:12px;}
form{ margin:0px; padding:0px;}



.tan_divc{ background:url(danchu_bg.gif) repeat-y; width:61px; min-height:3px;_height:3px; border:1px solid #d5e2e8}
.tan_divc ul{ margin:0px; padding:0px;}
.tan_divc ul li{ width:61px;font-size:12px;vertical-align:middle; text-align:center;zoom:1;overflow:hidden; margin:0px; padding:0px; line-height:18px;}


.tan_divc ul li A:link {COLOR: #313131; TEXT-DECORATION:none}
.tan_divc ul li A:visited {COLOR: #313131; TEXT-DECORATION:none}
.tan_divc ul li A:hover {COLOR: #313131; TEXT-DECORATION: none}
.tan_divc ul li A:active {COLOR: #313131; TEXT-DECORATION:none}

#hx{ background:url(fenge.gif) no-repeat; height:2px; overflow:hidden; width:61px;}

 

 

用法:

	initContextMenu("navigation","li",[
 	{doFun:"addNode()",title:"新增"},
 	{doFun:"modNode()",title:"修改"},
 	{doFun:"delNode()",title:"删除"},
 	{doFun:"up()",title:"上移"},
 	{doFun:"down()",title:"下移"}]);
 

li可以为""

 

 

效果:


  • 大小: 14.3 KB
1
0
分享到:
评论

相关推荐

    JQuery简单右键菜单

    JQuery简单右键菜单

    shellNew Settings右键菜单管理工具

    shellNew Settings是一款简单实用的右键菜单管理工具,主要作用是清理右键新建菜单,随着电脑程序装的多了,这个新建菜单里的内容也会很多,这时你可以用过shellNewSettings清理掉不常用的程序,等需要的时候,还...

    MFC实现简单的右键菜单

    使用Visual Studio2019的MFC对话框项目,实现了右键菜单。但是,本项目的”图形“功能有一个bug尚未解决,圆圈会不停移动,造成程序不响应,原因是不知道如何接收WM_xxx消息,希望有人告诉我。

    krkr右键菜单简单写法

    krkr右键菜单简单写法

    shellNew Settings右键菜单列表(管理工具),实用小工具

    实用小工具,shellNew Settings是一款简单实用的右键菜单管理工具,主要作用是清理右键新建菜单,随着电脑程序装的多了,这个新建菜单里的内容也会很多,这时你可以用过shellNewSettings清理掉不常用的程序,等需要...

    右键菜单管理

    右键菜单管理,绿色 简单实用 右键菜单管理,绿色 简单实用 右键菜单管理,绿色 简单实用

    清除多余的桌面右键菜单工具

    可以清除多余的桌面右键菜单工具 当然不会清除默认菜单项哦 操作非常简单 打开工具 按回车开始清除

    VB 简单制作鼠标右键菜单实例

    VB 简单制作鼠标右键菜单实例 www.2e3.org

    c#右键菜单使用源代码

    c#右键菜单使用源代码 免费源代码 实现右键菜单 最简单方式

    简单好用的右键菜单修改工具

    右键菜单修改工具,可以添加右键背景,轻松注册DLL文件等。非常简单好用。

    基于Bootstrap外观的JavaScript右键菜单插件

    前几天我们刚刚分享过一款超实用jQuery右键菜单,使用和配置都比较简单。这次我们要分享的也是一款JavaScript右键菜单插件,它的外观是基于Bootstrap的,因此UI比之前那款要漂亮许多,另外这款右键菜单插件也支持...

    简单的外壳上下文菜单-实现右键菜单

    实现右键菜单,可以参考一下 演示如何创建一个简单的外壳上下文菜单,而不是使用一些注册表项的COM,。样本的上下文菜单中创建一个选定的JPEG图像的灰度副本。

    VB鼠标右键菜单制作

    VB制作鼠标右键菜单,黏贴,复制,剪切的简单应用

    web右键菜单,简单方便更改

    很简单能套用的web右键菜单menu,简单明了。很容易更改自己的内容

    清除多余右键菜单

    用于清除多余的右键菜单,简单易行,操作简单,小巧实用!

    win7右键菜单管理工具(新建/清理菜单).rar

    添加有用的功能到你的右键菜单,这些功能都是些简单的操作,例如复制、粘贴、重命名以及其它功能。移除或禁用由其他程序添加的右键菜单项目和SHELL扩展。文件类型关联允许你用程序关联扩展名,也可用于管理已关联...

    window右键菜单管理

    ContextMenuManager 是一款Windows右键菜单管理小工具。它的操作界面设计非常直观,操作方法也很简单,再加上仅仅300多KB的体积和单文件免安装的属性,让它成为一款不可多得的电脑右键菜单管理神器!

    右键菜单管理.rar

    右键菜单管理,绿色、简单、实用,不过非专业人士可能会有点难懂

    鼠标右键新建菜单的管理工具

    鼠标右键管理工具 很简单,很小,很强大 鼠标右键管理工具 很简单,很小,很强大

    非常实用的js全屏右键菜单插件

    这是一款非常实用的js全屏右键菜单插件。该右键菜单插件可以在页面的任何地方按右键弹出上下文菜单,而且可以制作为多级菜单。它由纯js制作,简单实用。

Global site tag (gtag.js) - Google Analytics