1

要素の境界線のクリックを検出する方法はありますか。たとえば、Rectangle などの要素にサイズ変更関数を書きたいと思います。つまり、Rectangle の境界線がクリックされたときにサイズ変更関数を呼び出します。四角形の境界線をクリックしてください。誰か助けてください。

前もって感謝します!

まゆり

4

1 に答える 1

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()上記の引数に基づいて、クリックされたのが境界線であるかどうかを検出します。

于 2014-01-20T17:32:01.830 に答える