Несколько событий 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);
это позволяет несколько обработчиков