js:根据节点隐藏extmenu条目



我使用cytoscape-cxtmenu.js在节点上提供命令,但并非所有节点都支持所有命令。如何只显示节点支持的命令?

var defaults = {
    selector: 'node',
    commands: [
        // everyone has a name
        {content: 'tell name',
         select: function(node) {console.log(node.data().name);}},
        // not everyone has a spouse
        {content: 'tell spouse',
         select: function(node) {console.log(node.data().spouse);}},
]};
var cxtmenuApi = cy.cxtmenu(defaults);

使用多个上下文菜单,每个菜单都有一个不同的选择器。

var cxtmenuApi1 = cy.cxtmenu({ selector: 'node[foo="bar"]' /* ... */ });
var cxtmenuApi2 = cy.cxtmenu({ selector: 'node[foo="baz"]' /* ... */ });

每个菜单都有自己的一组命令,所以你可以使用相同的命令,但有些命令在1中禁用(disabled: true),但在2中启用,等等。

或者,您可以只指定应用于每一组节点的命令——但是,命令的相对位置可能因节点而异。

最新更新