Несколько событий document.onmousemove не работают

Мне нужна помощь с проектом javascript. У меня есть две функции, которые запускаются при перемещении мыши, но только одна из них работает каждый раз.

Например, если я сделаю это

var mouseX;
var mouseY;

document.onmousemove = captureMouse;
document.onmousemove = function(){console.log("check");}
function captureMouse(ev){
ev = ev || window.event;
var mousePos= mouseCoords(ev);
mouseX=mousePos.x;
mouseY=mousePos.y;
document.getElementById("coordinput").value=mouseX;
return mousePos;}

function mouseCoords(ev){

if(ev.pageX || ev.pageY){

return {x:ev.pageX,y:ev.pageY};


}

 return{
 x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,
 y:ev.clientY + document.body.scrollTop  - document.body.clientTop 
 };

}

Если я удаляю второй document.onmousemove, первый работает нормально и меняет значения поля ввода

Если я оставляю его там, он постоянно пишет чек, как и должно (для целей отладки), но первый не работает

Любые идеи о том, как заставить работать несколько событий мыши?

1 ответ

Решение

Использование document.addEventListener('mousemove', yourCb); это позволяет несколько обработчиков

Другие вопросы по тегам