На данный вопрос уже ответили:
Идея проста, узнавать координаты курсора каждые 20 миллисекунд. Но только получается это сделать. Делал вот так. Вместо e пробовал event, window.event
setInterval(document.onmousemove = function (e) {
var mouseX = e.pageX - getCoords(canvas).left;
var mouseY = e.pageY - getCoords(canvas).top;
console.log(mouseX);
console.log(mouseY);
},20);
Подскажите, кто знает. Или может есть какой-то другой способ узнать координаты курсора каждые 20 миллисекунд?
Вы каждые 20 секунд меняете обработчик события mousemove, что совершенно не нужно.
// определим обработчик один раз
let start = Date.now()
const delay = 20 // задержка
document.onmousemove = function (e) {
let now = Date.now()
// прошло N миллисекунд, можно выполнять что угодно
if(now - start > delay) {
start = now // обязательно обновляем дату с последнего вызова
// тут можно выполнить ваш код
}
}
Но есть одна беда, если вы не будите двигать мышкой, то ничего происходить не будет, и возможно последние координаты не будут соответствовать координатам прямо сейчас (чем больше задержка, тем больше разница)
UPD
Вариант с актуальными координатами.
let coords = 0
setInterval(function () {
console.log(coords) // в coords должны быть актуальные данные
}, 20)
document.onmousemove = function (e) {
coords = e.pageX // или что вам там конкретно нужно
}
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости