簡體   English   中英

如何在不使用ID的情況下將dijit /菜單附加到節點?

[英]How to attach dijit/menu to a node without using id's?

根據Dijit / menu的Dojo文檔,您可以通過指定節點的ID將菜單附加到節點。 就像他們的例子

  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();
  });

節點

<span id="progmenu">Right click me to get a menu</span>

但是,我不能在項目中使用ID。 我需要使用連接點。 如何通過附加點將菜單附加到節點?

在Dojo中,您可以指定DOM節點的ID的大多數地方,可以指定該節點本身作為替代,假設您可以獲取對該節點的引用(如附加點的情況)。

如果程序附加點指向小部件,請指向小部件的domNode。

pMenu = new Menu({
    targetNodeIds: [this.progmenu.domNode]
});

如果連接點是DOM節點,請直接使用連接點,或任何包含對該節點的引用的變量。

pMenu = new Menu({
    targetNodeIds: [this.progmenu]
});

另一個選擇是使用dijit / Menu .bindDomNode,並使用相同的技巧到達節點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM