私はイベントハンドラを扱い、マウスの開始位置と終了位置を取得しています。Webコンポーネントでクリックしてドラッグしてバウンディングボックスを作成しようとしています
これで、選択ボックスを作成できます。
私はmousedownから始めます。私は現在の位置:new Point(event.target.clientLeft, event.target.clientTop);
を保存します。これは、それに応じて選択divを設定すると、その場所で動作するようです。
次はすべてが間違っているようです。 mousemoveイベントではマウスの座標を取得しようとしていますが、その違いを使って境界ボックスの高さと幅を定義できます。私が作成したWebコンポーネントの座標によってすべてがオフになっているようです。
どうすればよいですか?
私は、マウスの位置を取得しようとすると、もっとイベントに出会っていますが、私の出発点は絶対位置ではなく、作成したWebコンポーネントを参照していると思います。
私は絶対的なものとして設定しているが正しく描画していないため、これを正しく行う方法を知りましたか?
補足として、これが入っているWebコンポーネントの絶対位置を引くことができれば、高さと幅が正しく描画されるはずです。
問題は、バウンディングボックスに適用すると、境界ボックスはスクリーンにではなくコンポーネントに相対的なものになるため、処理しようとしています。 Webコンポーネントは考慮されていますか? – Fallenreaper
'event.offset'を使用して、ターゲットノードに相対的な位置を取得できます。 –
私は最初にオフセットを使用していたと信じていますが、それは画面に相対的なものではなく、ドライブの親に対する相対的なものではありませんでした。 – Fallenreaper