как определить положение курсора относительно canvas в javascript

Аватар пользователя Maksim Litvinov
Maksim Litvinov
28 марта 2025

Для определения положения курсора относительно холста (canvas) в JavaScript можно воспользоваться событиями мыши на элементе canvas и координатами событий.

Прежде всего, нужно добавить обработчики событий мыши на элемент canvas:

const canvas = document.getElementById('myCanvas');

canvas.addEventListener('mousemove', function(event) {
    // Обработка движения мыши на холсте
    const rect = canvas.getBoundingClientRect();
    const x = event.clientX - rect.left;
    const y = event.clientY - rect.top;

    console.log('Координаты курсора на холсте: ' + x + ', ' + y);
});

Данный код добавляет обработчик события "mousemove" на элемент canvas. Внутри обработчика мы получаем координаты курсора относительно окна браузера с помощью event.clientX и event.clientY, а затем вычитаем смещение холста относительно окна (расположение холста на странице) с помощью rect.left и rect.top, чтобы получить итоговые координаты курсора относительно холста.

Теперь при движении курсора по холсту, в консоль будет выводиться его текущее положение относительно холста. В дальнейшем, можно использовать эти координаты, например, для рисования на холсте или других манипуляций с элементами на нем.

0 0