javascript - 克隆一个 DOM 事件对象以重新分发

标签 javascript dom dom-events

有些浏览器不允许您重新分派(dispatch)已经分派(dispatch)的事件,但允许您根据可以从现有事件对象获得的值创建新的事件对象。

是否有适用于任何事件类型的通用且可重用的解决方案,或者如果没有,是否有针对特定事件类型执行此操作的方法(在我的例子中,我目前关注的是 mousewheel 事件)?

最佳答案

现在似乎有更好的解决方案,因为 initMouseEvent 等已被弃用。 MouseEvent()例如,构造函数将一个属性表作为它的第二个参数,您可以为此使用现有的 MouseEvent 对象:

let my_event = new MouseEvent(`foo`, some_existing_mouse_event);
dispatchEvent(my_event);

其他类的事件具有类似的构造函数,应该以相同的方式使用。如ClipboardEvent() .

jsfiddle example

关于javascript - 克隆一个 DOM 事件对象以重新分发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12752818/

相关文章:

javascript - Nodejs 网站不显示第二个 mysql 表值

javascript - 访问在外部 SVG 文件中定义的 DOM 对象

reactjs - 是否使用 ES6 箭头响应 onChange 函数

基于当前浏览器的宽度和高度的 JavaScript CSS 选择

javascript - 原型(prototype) JavaScript Event.observe - 如何观察可能存在或不存在的元素

javascript - Fancybox 在页面加载时打开

javascript - 如何在 app.on ("before-quit"中使用 shutdown.bat 停止 Tomcat?

javascript - 无法在 Firefox 上发送 Tokbox "signals"

ajax - 如何通过ajax放置XFBML代码?

javascript - anchor "javascript:void(0)"导致 window.onbeforeunload 在 IE 上触发