Heim > Web-Frontend > js-Tutorial > Wie erhalte ich Mausklick-Koordinaten für ein Canvas-Element in JavaScript?

Wie erhalte ich Mausklick-Koordinaten für ein Canvas-Element in JavaScript?

DDD
Freigeben: 2024-12-06 06:17:10
Original
133 Leute haben es durchsucht

How Do I Get Mouse Click Coordinates on a Canvas Element in JavaScript?

Mausklickkoordinaten auf einem Canvas-Element abrufen

Bei dieser Frage geht es darum, die genauen Koordinaten eines Mausklicks relativ zu einem Canvas-Element zu ermitteln. Für moderne Browser wie Safari, Opera und Firefox gibt es eine optimierte Lösung, die jQuery überflüssig macht.

Der bereitgestellte JavaScript-Code bietet einen eloquenten Ansatz für diese Aufgabe:

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);
});
Nach dem Login kopieren

Dies Code erfasst effizient die Mausklickposition, indem er die Methode getBoundingClientRect() nutzt und die relativen x- und y-Koordinaten berechnet. Der Aufruf von console.log() zeigt diese Koordinaten an und liefert so einen klaren Hinweis auf die Position des Klicks innerhalb des Canvas-Elements.

Das obige ist der detaillierte Inhalt vonWie erhalte ich Mausklick-Koordinaten für ein Canvas-Element in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage