联合JS - 检测边界单击/调整联合Js元素

时间:2014-01-20 16:14:12

标签: jointjs

有没有办法检测元素边框上的点击,我想给元素写一个resize函数,比如Rectangle,即当单击Rectangle的边框时调用resize函数,同样我无法跟踪矩形边框的点击,任何人都可以帮忙。

提前致谢!

涅茧利

1 个答案:

答案 0 :(得分:3)

在SVG中无法检测到边框上的单击,事件的目标是整个元素。但是,您可以通过了解矩形的笔触宽度和单击的x,y坐标来检测到这一点。你知道矩形的位置,所以这应该足以决定它是否是被点击的边界。

paper.on('cell:pointerdown', function(cellView, evt, x, y) {
    var bbox = cellView.getBBox();
    var strokeWidth = cellView.model.attr('rect/stroke-width') || 1;
    console.log(isBorderClicked(bbox, x, y, strokeWidth))
});

isBorderClicked()函数检测它是否是基于上述参数点击的边框。