Javascript 如何将dijit/menu附加到节点而不使用id';s
根据Dojo文档中的 可以通过指定节点的id将菜单附加到节点。就像他们的例子一样Javascript 如何将dijit/menu附加到节点而不使用id';s,javascript,dojo,Javascript,Dojo,根据Dojo文档中的 可以通过指定节点的id将菜单附加到节点。就像他们的例子一样 require([ "dijit/Menu", "dijit/MenuItem", "dijit/CheckedMenuItem", "dijit/MenuSeparator", "dijit/PopupMenuItem", "dojo/domReady!" ], function(Menu, MenuItem, CheckedMenuItem, MenuSeparator, Pop
require([
"dijit/Menu",
"dijit/MenuItem",
"dijit/CheckedMenuItem",
"dijit/MenuSeparator",
"dijit/PopupMenuItem",
"dojo/domReady!"
], function(Menu, MenuItem, CheckedMenuItem, MenuSeparator, PopupMenuItem){
var pMenu;
pMenu = new Menu({
targetNodeIds: ["progmenu"]
});
...
...
pMenu.startup();
});
节点
右键单击我以获得菜单
但是,我不能在我的项目中使用Id。我需要使用附加点。如何通过附加点将菜单附加到节点?在Dojo中,大多数可以指定DOM节点id的地方,可以将节点本身指定为备选方案,前提是可以获得对它的引用(如附加点) 如果progmenu附加点指向小部件,请指向小部件的domNode
pMenu = new Menu({
targetNodeIds: [this.progmenu.domNode]
});
如果附加点是DOM节点,请直接使用附加点,或者使用包含对该节点引用的任何变量
pMenu = new Menu({
targetNodeIds: [this.progmenu]
});
另一个选项是使用.bindDomNode,使用相同的技巧到达该节点。在Dojo中可以指定DOM节点id的大多数地方,您可以指定节点本身作为替代,前提是您可以获得对它的引用(如附加点)
pMenu = new Menu({
targetNodeIds: [this.progmenu]
});
如果progmenu附加点指向小部件,请指向小部件的domNode
pMenu = new Menu({
targetNodeIds: [this.progmenu.domNode]
});
如果附加点是DOM节点,请直接使用附加点,或者使用包含对该节点引用的任何变量
pMenu = new Menu({
targetNodeIds: [this.progmenu]
});
另一个选项是使用.bindDomNode,使用相同的技巧访问节点
pMenu = new Menu({
targetNodeIds: [this.progmenu]
});