Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在javascript中获取鼠标位置?_Javascript_Dom_Addeventlistener - Fatal编程技术网

如何在javascript中获取鼠标位置?

如何在javascript中获取鼠标位置?,javascript,dom,addeventlistener,Javascript,Dom,Addeventlistener,我最近在玩一款js游戏,它需要鼠标位置来改变背景颜色, 我试过了 event.clientX,event.clientY和event.pageX,event.pageY 现在它变成了:- function l(){ let x = event.pageX ; let y = event.pageY; document.bgColor = 'rgb($(x),$(y),$((x/2+y/2))' }; document.body.addEventListener('mou

我最近在玩一款js游戏,它需要鼠标位置来改变背景颜色, 我试过了

event.clientX,event.clientY
event.pageX,event.pageY

现在它变成了:-

function l(){
    let x = event.pageX ;
    let y = event.pageY;
    document.bgColor = 'rgb($(x),$(y),$((x/2+y/2))'
};

document.body.addEventListener('mousemove',l());
但是,它仍然会产生错误

uncaught TypeError: Cannot read property 'pageX' of undefined
如果有人解决了我的问题,请提前向他表示感谢 玩得开心:-)

试试这个:

var movementFunction = function (event) { 
    console.log(event.pageX, event.pageY);
    let x = event.pageX ;
    let y = event.pageY;
    document.bgColor = `rgb(${x}, ${y}, ${(x/2+y/2)}`
}

document.body.addEventListener('mousemove', movementFunction);



addEventListener的第二个参数必须是函数,而不是调用函数的结果。。。修正:
document.body.addEventListener('mousemove',l)
l
应将
事件
作为参数是的,但为什么?答案中有解释和对所做更改的良好描述会更好。