获取jointJS中的外部元素展开论文
Getting outer elements in jointJS to expand the paper
我想展开纸张以防用户将元素移动到底部或右边框:
var paper = new joint.dia.Paper({
el: $('#canvas'),
width: 801,
height: 496,
model: graph
});
rect.on('change:position', function(evt, pos) {
if (pos.y > 400) { height = pos.y + 96; }
else { height = 496; }
if (pos.x > 680) { width = pos.x + 121; }
else { width = 801; }
paper.setDimensions(width, height);
});
这仅适用于单个元素。但如果已经有另一个元素,这就不起作用了。
所以我需要找到具有最高 x 或 y 值的元素。这意味着我搜索最右边或最底部的元素。然后我会把它放到另一个 if 子句中。
我想过使用paper.findViewsInArea(rect)
,但我真的不知道如何得到我需要的结果。
您不必使用 setDimensions()
。只需做类似
的事情
rect.on('change:position', function(evt, pos, y) {
paper.fitToContent({
minWidth: 801,
minHeight: 496
});
});
我想展开纸张以防用户将元素移动到底部或右边框:
var paper = new joint.dia.Paper({
el: $('#canvas'),
width: 801,
height: 496,
model: graph
});
rect.on('change:position', function(evt, pos) {
if (pos.y > 400) { height = pos.y + 96; }
else { height = 496; }
if (pos.x > 680) { width = pos.x + 121; }
else { width = 801; }
paper.setDimensions(width, height);
});
这仅适用于单个元素。但如果已经有另一个元素,这就不起作用了。
所以我需要找到具有最高 x 或 y 值的元素。这意味着我搜索最右边或最底部的元素。然后我会把它放到另一个 if 子句中。
我想过使用paper.findViewsInArea(rect)
,但我真的不知道如何得到我需要的结果。
您不必使用 setDimensions()
。只需做类似
rect.on('change:position', function(evt, pos, y) {
paper.fitToContent({
minWidth: 801,
minHeight: 496
});
});