如何为模拟的javascript事件设置pageX [英] How to set pageX for simulated javascript event

查看:98
本文介绍了如何为模拟的javascript事件设置pageX的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在DOM节点上模拟 mousemove 事件:

I'm simulating a mousemove event on a DOM node by:

var e = document.createEvent('MouseEvents');
e.initEvent('mousemove', true, true)
node.dispatchEvent(e)

然而,在我的 mousemove 回调文件中绑定了该回调,事件对象返回时带有 pageX pageX

However in my mousemove callback which is bound on the document, the event object is returned with a pageX of 0. Is there a way I can set pageX when initializing or dispatching the event?

推荐答案

来自此处

要看它运作,只需运行:

To see it working, just run this:

document.addEventListener('mousemove', function (e) { console.log(e.pageX); });
var e = document.createEvent('MouseEvents');
// event.initMouseEvent(type, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY)...
e.initMouseEvent('mousemove', true, true, window, 1, 100, 100, 100, 100);
document.dispatchEvent(e);

似乎 clientX clientY pageX pageY 相同!
希望它有所帮助!

Seems that clientX and clientY are the same as pageX and pageY! Hope it helps!

这篇关于如何为模拟的javascript事件设置pageX的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆