我使用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中启用,等等。
或者,您可以只指定应用于每一组节点的命令——但是,命令的相对位置可能因节点而异。