在JointJs中,可以通过设置元素的draggable
属性为false
来防止带端口的元素被移动。同时,可以使用element.addPort()
方法来添加端口,并使用element.getPort()
方法来获取端口。这样,即使元素不可移动,其端口仍然可以正常工作。
以下是一个示例代码:
var element = new joint.shapes.basic.Rect({
position: { x: 100, y: 100 },
size: { width: 100, height: 50 },
attrs: {
rect: { fill: 'blue' },
text: { text: 'Element', fill: 'white' }
},
draggable: false // 设置元素不可移动
});
// 添加端口
var port = element.addPort({
id: 'port1',
group: 'in',
attrs: {
circle: { fill: 'red' },
text: { text: 'Port 1', fill: 'white' }
}
});
// 获取端口
var port1 = element.getPort('port1');
// 将元素添加到画布中
graph.addCell(element);
在上述示例中,element
是一个不可移动的元素,但它仍然具有一个名为port1
的端口,可以通过element.getPort('port1')
来获取该端口。
领取专属 10元无门槛券
手把手带您无忧上云