隐藏图中的元素

时间:2014-11-24 21:56:01

标签: jointjs

我有一个只读图来显示一些数据。我的最终用户希望"过滤"数据使得一次只能显示数据的子集。我意识到每次我应用过滤器时都可以重绘整个图表,省略了不显示的元素,但我想知道是否有一种方法可以简单地隐藏"一些现有的元素动态地然后重新显示它们。

为了尝试清楚地表达,如果这是一个网页而不是图表,我会画出将display: none的CSS应用于我选择的元素的类比。

1 个答案:

答案 0 :(得分:7)

您实际上可以使用JointJS图表元素/链接执行相同的操作。例如:

myElement.attr('./display', 'none')

隐藏呈现元素的整个SVG组元素。请注意'.'是一个指向整个组的特殊选择器。如果你只想隐藏某个SVG子元素,你可以这样做,例如对于joint.shapes.basic.Rect元素,您可以:

myRect.attr('rect/display', 'none')

这只会隐藏我们通过<rect>方法修改的rect对象中的标记名attrs引用的矩形(SVG attr()元素。