Jus*_*zer 2 javascript dom-events
我希望能够将自定义数据传递给模拟的 JavaScript 事件,以便我可以在事件侦听器回调中唯一标识该模拟事件。例如,如果我打电话:
var event = document.createEvent("MouseEvents");
var args = ['mousemove', true, true, window, 1, 0, 0];
event.initMouseEvent.apply(event, args);
target.dispatchEvent(event);
Run Code Online (Sandbox Code Playgroud)
我如何能够将数据传递给此事件,然后从事件侦听器回调中检索它?
只需将该数据添加到您的event对象就足够了:
target.addEventListener("mousemove", function(e) {
console.log(e.data);
}, false);
var event = document.createEvent("MouseEvents");
var args = ['mousemove', true, true, window, 1, 0, 0];
event.data = "foobar";
event.initMouseEvent.apply(event, args);
target.dispatchEvent(event);
Run Code Online (Sandbox Code Playgroud)
PS 请注意,在某些浏览器中这些参数是不够的,所有这些参数都是必需的,否则会引发异常。我不确定您想要支持哪些浏览器。有关所有参数,请参阅:https://developer.mozilla.org/en/docs/DOM/event.initMouseEvent
| 归档时间: |
|
| 查看次数: |
3969 次 |
| 最近记录: |