[英]Implementing different leaf and folder context menus for YUI treeview
我用上下文菜单实现了树视图。 我想有两个带有不同选项的独立上下文菜单,一个用于文件夹,另一个用于叶子。
我的树是从嵌套的html树构建的。 由于我是使用mako模板构建此树的,因此我知道哪些节点是树和文件夹。 每个节点都是<li class="folder">
或`。
我目前正在使用oFolderContextMenu.cfg.setProperty("trigger", YAHOO.util.Dom.getElementsByClassName("folder"));
但是问题在于只有顶级文件夹具有上下文菜单。
我希望子文件夹也有菜单。 文件夹和子文件夹都具有“文件夹”类。 我还尝试在oFolderContextMenu定义中设置触发器,但最终遇到相同的问题。
您可以将要用作触发器的所有DOM元素收集到一个数组中,然后将它们传递给配置。 使用本机函数“ concat”,您可以将一个或多个数组合并为一个。
例:
var triggerNodes, foldernodes, folder;
foldernodes = YAHOO.util.Dom.getElementsByClassName("foldernode");
folder = YAHOO.util.Dom.getElementsByClassName("folder");
triggerNodes = foldernodes.concat(folder);
oFolderContextMenu.cfg.setProperty("trigger", triggerNodes);
concat文档-http: //www.w3schools.com/jsref/jsref_concat_array.asp
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.