在 JointJS 的自定义元素中更改端口位置
Changing Port Location in custom element in JointJS
我能够利用这个问题的答案创建自定义元素:
查看 JointJS 教程后,我看不出如何将端口移动到元素上的不同位置。
谢谢
示例代码:
http://jsfiddle.net/jshubert/9a8brrun/
var el1 = new joint.shapes.devs.Model({
markup: '<g class="rotatable"><g class="scalable"><image class="body"/></g><text class="label"/><g class="inPorts"/><g class="outPorts"/></g>',
size: {
width: 100,
height: 100
},
position: {
x: 50,
y: 75
},
attrs: {
'.label': { text: 'SW_1', 'ref-x': .1, 'ref-y': .01},
'.body': {
width: 1024,
height: 768,
'xlink:href': 'data:image/svg+xml;utf8,' + encodeURIComponent(svgFile),
preserveAspectRatio: 'none'
}
},
inPorts: ['1'],
outPorts: ['2']
});
ref-x
, ref-y
应用于适当的选择器可以做到这一点,例如。
'.inPorts .port0 .port-body' : {'ref-x': -20, 'ref-y': -20}
我能够利用这个问题的答案创建自定义元素:
查看 JointJS 教程后,我看不出如何将端口移动到元素上的不同位置。
谢谢
示例代码: http://jsfiddle.net/jshubert/9a8brrun/
var el1 = new joint.shapes.devs.Model({
markup: '<g class="rotatable"><g class="scalable"><image class="body"/></g><text class="label"/><g class="inPorts"/><g class="outPorts"/></g>',
size: {
width: 100,
height: 100
},
position: {
x: 50,
y: 75
},
attrs: {
'.label': { text: 'SW_1', 'ref-x': .1, 'ref-y': .01},
'.body': {
width: 1024,
height: 768,
'xlink:href': 'data:image/svg+xml;utf8,' + encodeURIComponent(svgFile),
preserveAspectRatio: 'none'
}
},
inPorts: ['1'],
outPorts: ['2']
});
ref-x
, ref-y
应用于适当的选择器可以做到这一点,例如。
'.inPorts .port0 .port-body' : {'ref-x': -20, 'ref-y': -20}