javascript 右键菜单树代码

自定义右键菜单(ContextMenu)和悬浮层树(Tree)其实现上都大同小异,都是在脚本里动态添加节点,然后在生成一个绝对定位层,只不过右键菜单树(ContextMenu)触发的事件不一样。另外右键菜单还需要提供一个动态添加菜单项功能,以实现右击不同的元素可以显示不同的右键菜单,我这里提供一种"回调函数",使用见如下代码:

//ContextMenu
var contextmenu = new ContextMenu(...{ container : document.getElementById('treemenu') });
contextmenu.push( ...{ html : 'Powered By: Jonllen', css教程 : 'disabled'});
contextmenu.push( ...{ html : '', css : 'line'});
contextmenu.push( ...{ html : '刷新(<u>R</u>)', href : 'javascript教程:location.reload();'});
for(var i=0;i<menu.length;i++) ...{
contextmenu.push(...{
id : menu[i].id,
level : menu[i].level,
parentId : menu[i].parentId,
html : menu[i].name,
href : menu[i].url
});
}
contextmenu.render();
//原有回调函数
var contextmenuOnShow = contextmenu.onShow;
//设置新的回调函数
contextmenu.onShow = function (target, _this)...{
var item = target.treemenu || target.parentNode.treemenu;
if( item ) ...{
var html = '添加'+item.html+'“子节点'+(item.children.length+1)+'”';
_this.push( ...{
html : html,
click : function (e)...{
item.expand = false;
var newItem = ...{
id : item.id + '0'+ (item.children.length+1),
level : item.level + 1,
parentId : item.id,
html : item.html+'子节点'+(item.children.length+1),
href : '#',
css : 'item',
createExpand : true
};
item.children.push(newItem);
treemenu.list.push(newItem);
treemenu.renderChild(item);
},
clickClose : true,
index : 1,
type : 'dynamic'
});
_this.push( ...{
html : '删除节点“'+item.html+'”',
click : function (e)...{
if( confirm('是否确认删除节点“'+item.html+'”?'))
treemenu.remove(item);
},
clickClose : true,
index : 2,
type : 'dynamic'
});
}
contextmenuOnShow(target, _this);
};

时间: 2024-09-20 13:06:20

javascript 右键菜单树代码的相关文章

3种不同的ContextMenu右键菜单实现代码_jquery

简单使用的右键菜单,希望能帮助大家.下面是截图和实例代码 实例预览 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head>

JS实现不使用图片仿Windows右键菜单效果代码_javascript技巧

本文实例讲述了JS实现不使用图片仿Windows右键菜单效果代码.分享给大家供大家参考,具体如下: 这里演示JS不使用图片仿Windows右键菜单效果,这款代码灵活使用了文鼎字,配合CSS和JS做出了这个和系统右键菜单很相似的东东. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-windows-right-button-menu-codes/ 具体代码如下: <HTML> <HEAD> <TITLE>极酷的多级右

谁有给每行记录增加一个右键菜单的代码?

问题描述 谁有一个列表中给每行记录增加一个右键菜单的代码?最好是jquery的 谢谢了 解决方案 http://www.cssrain.cn/demo/contextmenu/contextmenu.html这有实例,是jquery的

Javascript 屏蔽右键菜单效果代码

  最简单的所有都屏蔽右键菜单 代码如下   <script type="text/javascript"> document.body.oncontextmenu=new function(){return false;}; </script> 我们希望在INPUT.text.TEXTAREA中可以实现右击,但在其它页面都要屏蔽右键菜单 实例代码 代码如下   <script type="text/javascript"> //

Javascript 自定义多级右键菜单效果代码

自定义右键菜单,请在页面点击右键查看效果. JavaScript 学习 第一课 网页特效原理分析 响应用户操作 提示框效果 事件驱动 元素属性操作 第二课 改变网页背景颜色 函数传参 高重用性函数的编写 126邮箱全选效果 循环及遍历操作 第三课 JavaScript组成 ECMAScript DOM BOM JavaScript兼容性来源 JavaScript出现的位置.优缺点 变量.类型.typeof.数据类型转换.变量作用域 闭包 什么是闭包 简单应用 闭包缺点 运算符 程序流程控制 定时

js禁止页面复制功能禁用页面右键菜单示例代码_javascript技巧

<body oncontextmenu="return false">禁用网页右键菜单,但是仍然可以使用快捷键复制. js代码禁用复制功能: 复制代码 代码如下: <script type="text/javascript"> document.body.onselectstart=document.body.oncontextmenu=function(){ return false;} </script> 注意这段代码必须放在

flash As2和As3的右键菜单实例代码

As3:右键菜单  代码如下 复制代码 var myContextMenu:ContextMenu = new ContextMenu(); myContextMenu.hideBuiltInItems(); //声明菜单新项 var item:ContextMenuItem = new ContextMenuItem("@author amyflash"); //添加到菜单显示项目数组 myContextMenu.customItems.push (item); root.conte

javascript伸缩型菜单实现代码_javascript技巧

本文实例讲述了JavaScript实现的伸展收缩型菜单代码.分享给大家供大家参考.具体如下: 运行效果截图如下: 具体代码如下: <html> <head> <title>真正的JavaScript伸展收缩型菜单</title> <style type="text/css"> #con div{width:100px;margin:5px 0 5px 0;font-size:9pt;height:23px;color:whit

js 屏蔽右键菜单效果代码

屏蔽右键菜单屏蔽右键菜单屏蔽右键菜单 屏蔽右键菜单   屏蔽右键菜单       你点击一下你的右键菜单会不会弹出菜单啊,如果你要查看源码我们可以在浏览查看菜单中查看我哦.