dtree+右键菜单 完美结合
来源:互联网 发布:非科班出身的美工 编辑:程序博客网 时间:2024/06/05 07:10
dtree + 右键菜单 (完美结合)
实现原理:
通过修改页面的右键菜单,来实现。
实现步骤:
1. 先引入dtree 需要的js , css ,图片 等资源;
2. 在页面生成一个 dtree 树;
3. 在页面上 自定义 一个右键菜单;
4. 在dtree 的 url 属性中:写入 [ javascript:函数名(参数名); ] 此处为,单击树要执行的JS;
5. 此处调用的JS函数,主要 功能就是更改页面的右键菜单,让用户在选中的节点上,右键点击时,出现自定义的右键菜单;
6. 再写一个 函数,来实现: 用户单击页面除了自定义右键菜单以外的地方,右键菜单消失,并且还原页面本来的右键菜单;(此处根据需要进行取舍)
(代码为 asp.net 示例,如果是web开发其他语言,也可通过这种原理来轻松实现)
<!-- 先引入dtree 需要的js , css ,图片 等资源;-->
<%--生成树样式--%>
<link rel="Stylesheet" type="text/css" href="dtree.css" />
<%--生成树文件--%>
<script type="text/javascript" src="dtree.js" ></script>s
<script language="javascript" type="text/javascript">
<!-- 在页面生成一个 dtree 树; -->
tree = new dTree('tree');
tree.config.useStatusText=true;
tree.config.closeSameLevel=true;
tree.config.useCookies = false;
tree.add(0, -1, "Tree example", "javascript: loadMenu('abc');");
tree.add(1, 0, "Node 1", "javascript:loadMenu();");
tree.add(2, 1, "Node 2", "javascript:loadMenu();");
tree.add(3, 1, "Node 3", "javascript:loadMenu();");
tree.add(4, 0, "Node 4", "javascript:loadMenu();");
tree.add(5, 4, "Node 5", "javascript:loadMenu();");
tree.add(6, 4, "Node 6", "javascript:loadMenu();");
tree.add(7, 2, "Node 7", "javascript:loadMenu();");
tree.add(8, 6, "Node 8", "javascript:loadMenu();");
tree.add(9, 1, "Node 9", "javascript:loadMenu();");
tree.add(10, 2, "Node 10", "javascript:loadMenu();");
document.write(tree);
<!-- 节点点击调用的JS函数,主要 功能就是更改页面的右键菜单,让用户在选中的节点上,右键点击时,出现自定义的右键菜单;-->
//点击节点后,将右键菜单更改为自定义的菜单
function loadMenu(obj) {
//获取参数
var param = obj;
// ... 通过获取 参数 来,执行方法
//............................
//............................
//重写 -- 页面点击右键菜单事件
document.oncontextmenu = function() {
//定位,显示
contextmenu.style.posLeft = document.body.scrollLeft + event.x + 10;
contextmenu.style.posTop = document.body.scrollTop + event.y + 10;
contextmenu.style.display = "inline";
return false;
}
}
<!-- 用户单击页面除了自定义右键菜单以外的地方,右键菜单消失,并且还原页面本来的右键菜单 的JS函数s -->
//单击页面上除了菜单以外的地方,隐藏右键菜单
document.onclick = function() {
//判断单击的是否为右键菜单
//如果不是,隐藏右键菜单
if (document.activeElement != contextmenu) {
contextmenu.style.display = "none"
//还原页面本来的右键菜单
document.oncontextmenu = '';
}
}
//颜色变量
var colorTemp = "";
</script>
<!-- 页面布局中的自定义右键菜单 -->
<!-- 右键菜单开始 -->
<div id="contextmenu" align="center" style="border:1px solid #666666;background:#eeeeee; width:100px;padding:0px;display:none;position:absolute">
<table style=" width:100px; font-size:12px; border:dashed 1px black; ">
<tr>
<td id="modAttribute" onclick="javascript:alert('编辑');" onmouseover="javascript:colorTemp=this.style.backgroundColor;this.style.backgroundColor='#98B4CE';" onmouseout="javascript:this.style.backgroundColor=colorTemp;" style=" background-color:#F5F5D1; height:15px; border-bottom:1px solid black; " > <!-- 编辑事件 -->
编辑
</td>
</tr>
<tr>
<td id="modEvent" onclick="javascript:alert('删除');" onmouseover="javascript:colorTemp=this.style.backgroundColor;this.style.backgroundColor='#98B4CE';" onmouseout="javascript:this.style.backgroundColor=colorTemp;" style=" background-color:#F5F5D1; height:15px; border-top:1px solid black; " > <!-- 删除事件 -->
删除
</td>
</tr>
</table>
</div>
<!-- 右键菜单结束 -->
- dtree+右键菜单 完美结合
- dtree+右键菜单 完美结合,超级简单的实现方法
- dtree + Jquery 添加右键菜单
- dtree 取节点 右键菜单取节点
- dtree动态树+Javascript右键菜单
- dtree动态树+Javascript右键菜单
- ztree完美整合easyui右键菜单
- FireEvent结合WSH实现右键菜单操作
- FireEvent结合WSH实现右键菜单操作
- dtree ajax 右键
- web开发dtree+右键
- dtree树形菜单
- 树状菜单(dtree)
- dtree中菜单排序!
- dtree树型菜单
- DTree实现树形菜单
- dTree三级树形菜单
- zTree结合jquery.contextMenu.js实现右键菜单
- VbsEdit的QuickBundles功能演示
- Java 中"=="、equals、hashcode相关
- 十年经验教你如何学习嵌入式系统(基于AR-电子系统设计论坛)
- ios中几种截屏的办法
- WEB服务器(.net2.0)部署水晶报表
- dtree+右键菜单 完美结合
- MuPDF在iOS平台的编译
- 在手机应用研发方面,IT专业人士对Android的兴趣远超iOS
- ImagePreview 图片预览 IE6下错误的问题
- Google adwords的优化
- Freescale P4080 I2C 驱动分析
- JQuery知识
- 火狐插件 YSlow插件帮助测试网站的加载速度
- Maven pom文件常用配置小结