如何否定 Cytoscape.js 中的 class 选择器?
How to negate class selector in Cytoscape.js?
我想 select 所有没有 class "myclass" 的元素。我怎样才能在 Cytoscape.js 中做到这一点?
根据 http://js.cytoscape.org/#selectors/data,“[^name]
如果未定义指定的数据属性则匹配元素”,但是 class 不是数据属性而 ^.myclass
是不起作用,:not(.myclass)
.
也不起作用
错误是The selector :not(.myclass) is invalid
。
有没有办法否定classes?
如果你想得到否定的class选择器,你可以这样做:
cy.elements().not(cy.$('.yourClass'));
// in more detail
var allElements = cy.elements(); // get all elements
var negators = cy.$('.yourClass'); // get all elements with the class to negate
var result = allElements.not(negators); // gets the difference between the two collections
如果您真的想仅通过使用选择器来实现此目的,那么您可以向每个具有 myclass
的元素添加一个数据字段(这可以在添加 class 时完成),并且然后使用 [^myclass]
我想 select 所有没有 class "myclass" 的元素。我怎样才能在 Cytoscape.js 中做到这一点?
根据 http://js.cytoscape.org/#selectors/data,“[^name]
如果未定义指定的数据属性则匹配元素”,但是 class 不是数据属性而 ^.myclass
是不起作用,:not(.myclass)
.
错误是The selector :not(.myclass) is invalid
。
有没有办法否定classes?
如果你想得到否定的class选择器,你可以这样做:
cy.elements().not(cy.$('.yourClass'));
// in more detail
var allElements = cy.elements(); // get all elements
var negators = cy.$('.yourClass'); // get all elements with the class to negate
var result = allElements.not(negators); // gets the difference between the two collections
如果您真的想仅通过使用选择器来实现此目的,那么您可以向每个具有 myclass
的元素添加一个数据字段(这可以在添加 class 时完成),并且然后使用 [^myclass]