首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

ext树的右键菜单统制-去掉右键菜单

2012-10-25 
ext树的右键菜单控制--去掉右键菜单?? ? ?工作需要,构建了一棵EXT JS的树,tree?? ? ?实际的需求是,有的节

ext树的右键菜单控制--去掉右键菜单

?? ? ?工作需要,构建了一棵EXT JS的树,tree

?? ? ?实际的需求是,有的节点需要右键菜单,有的节点不需要右键菜单,但是从网上找来的模板中所有的节点都会有右键菜单。

?? ? ?具体右键菜单的代码如下:


contextmenu : function(node, e) {//右键点击节点,会运行的函数parent.tree.parentId.value = node.attributes.id;node.select();var c = node.getOwnerTree().contextMenu;c.removeAll();c.contextNode = node;c.showAt(e.getXY());                if(node.attributes.TYPE=="xx"){                c.add("menu1");                } else {                //不添加右键菜单                }                                                    }
?

?? ? ?但是实际情况是按照以上的代码,就算是node的属性TYPE不是xx,右击过去,也会显出一个扁平的空框框,非常难看而且没有内容。


?? ? ?经过对代码的作用的分析,知道右键菜单显示的控制主要是:c.showAt(e.getXY()); 这一句。这一句决定了无论c是否add了菜单项,都会show一个菜单容器出来在页面上。


?? ? ?所以将c.showAt(e.getXY());这一句剪切到了 if(node.attributes.TYPE=="xx")中,就完成了对某些节点的右键菜单是否显示的控制。


?? ? ?特此记录,以备大家有相同的需要。



?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?elemark

?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?2010年11月9日11:11:39

?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??http://elemark.iteye.com

?

热点排行