gpt4 book ai didi

javascript - mouseEvent.initMouseEvent 的参数不足

转载 作者:行者123 更新时间:2023-11-30 12:33:47 26 4
gpt4 key购买 nike

以下 JS 代码在 Safari 上正常运行:

var a = $('.shell a')[0];
var evObj = document.createEvent('MouseEvents');
evObj.initMouseEvent('click', true, true, window);
a.dispatchEvent(evObj);

但是,这一行

evObj.initMouseEvent('click', true, true, window);

在 Firefox 中给我以下错误:

TypeError: Not enough arguments to MouseEvent.initMouseEvent.

我应该使用什么来实现多浏览器兼容性?

最佳答案

正如您在 MDN's initEvent page 上看到的那样,不推荐使用这样的事件。 “改为使用事件构造函数”:

https://developer.mozilla.org/en-US/docs/Web/Guide/Events/Creating_and_triggering_events

在你的情况下:

var evObj = new Event('click');
a.dispatchEvent(evObj);

但是 click 事件要简单得多!原生 DOM 对所有元素都有一个 click() 方法,因此您可以这样做:

a.click();

就是这样。

如果你想触发自定义事件或类似mouseover的事件,你仍然可以使用(新的)事件派发系统:new Event('mouseover')

关于javascript - mouseEvent.initMouseEvent 的参数不足,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26761625/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com