1) --我正在使用JointJS图表库。我想在使用inPort时更改特定joint.shapes.devs的css。
将sourcePort链接到我正在使用的目标
source: { id: source.id, selector: source.getPortSelector(sourcePort)}
它给了我准确的源端口,但是在知道css作为我的源连接器之后,如何在这个特定端口上应用css呢?有办法吗?
2)如果标签的宽度大于元素的宽度,那么它能自动在元素内部安装/包装吗?我使用的是joint.shapes.devs.Atomic元素。
我偶然发现了foreignobject,但不知道如何使用它?有人能给它点光吗?
发布于 2014-02-27 21:13:31
1)
myShape.attr('[port="a"]/fill', 'blue')在斜杠前的第一个参数的第一部分是指向端口循环SVG元素的CSS选择器,第二个部分是要在该元素上设置的SVG属性,第二个参数是要为该属性设置的值。做同样事情的另一种语法是:
myShape.attr({ '[port="a"]': { fill: 'blue' } })有关详细信息,请参阅attr()方法参考:http://jointjs.com/api#joint.dia.Element:attr。
2) joint.shapes.devs.Atomic形状不会自动完成这一任务。您必须创建自己的形状,并通过foreighObject或以编程方式在JavaScript中实现。作为使用foreignObject的参考,请参阅此文件中定义的joint.shapes.basic.TextBlock形状:https://github.com/DavidDurman/joint/blob/master/plugins/joint.shapes.basic.js。
https://stackoverflow.com/questions/22069466
复制相似问题