次のテストコードは正しく動作します。 mousemove
イベントはオブジェクトmousePosition
の中にマウスの位置を格納するcheckPosition
関数をトリガします。コールバック関数は、プロパティ自体を格納するオブジェクトですか?
"use strict";
const mousePosition = {
x: 0,
y: 0
}
function checkPosition(e) {
mousePosition.x = e.clientX;
mousePosition.y = e.clientY;
}
addEventListener("mousemove", checkPosition);
addEventListener("click",() => console.log(mousePosition));
私は、可能な場合は、これを単純化したいと思いますが。コールバック関数の中にマウスの位置を格納する方法はありますか?私はこれをさまざまな方法で試してみたが、私は運がない。
以下のコードは機能しませんが、うまくいけば私が達成しようとしていることが示されます。私は私の構文が骨抜きでなければならないことを知っているが、私はこれをどのように構築するのか分からない。本当にありがとう!
"use strict";
const mousePosition = (e) => {
x: e.clientX,
y: e.clientY
};
addEventListener("mousemove", mousePosition);
addEventListener("click",() => console.log(mousePosition.x, mousePosition.y));
非常に興味深い、私はあなたのポイントを参照してください。私は構文を減らすために矢印関数を試していました。この場合、内部のプロパティを対象とする名前付き関数が必要であることはまだ分かりませんでした。完璧! – DR01D
説明と推論は一般的には良いですが、このシナリオでは誰かが 'mouseFunction'をどのように置き換えることができますか?それは定数です。 –
私は彼らができるとは思わない(私は私の答えでそれに取り組んだが)。いずれにせよ、それはIMHOを避けるのが最善の方法です。 – Alnitak