クリックの x 座標と y 座標 (キャンバス要素を基準として) を返すクリック イベント ハンドラーをキャンバス要素に追加する最も簡単な方法は何ですか?
従来のブラウザとの互換性は必要ありません。Safari、Opera、Firefox で十分です。
ベストアンサー1
シンプルさは好みだが、クロスブラウザ機能も欲しいという場合、このソリューションが私にとって最適だとわかりました。これは、@Aldekein のソリューションをjQuery なしで簡略化したものです。
function getCursorPosition(canvas, event) {
const rect = canvas.getBoundingClientRect()
const x = event.clientX - rect.left
const y = event.clientY - rect.top
console.log("x: " + x + " y: " + y)
}
const canvas = document.querySelector('canvas')
canvas.addEventListener('mousedown', function(e) {
getCursorPosition(canvas, e)
})