Javascript 参数不足,无法访问mouseEvent.initMouseEvent
以下JS代码在Safari上正常工作:Javascript 参数不足,无法访问mouseEvent.initMouseEvent,javascript,Javascript,以下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中显示以下错误: Typ
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.
我应该使用什么来实现多浏览器兼容性?正如您在上所看到的,不推荐使用这样的事件。“改用事件构造函数”:
就你而言:
var evObj = new Event('click');
a.dispatchEvent(evObj);
但是,单击
事件要简单得多!本机DOM对所有元素都有一个click()
方法,因此您可以执行以下操作:
a.click();
就这样
如果您想触发自定义事件或类似于
mouseover
的事件,您仍然可以使用(新)事件调度系统:newevent('mouseover')
etc这是旧方法。新方法更简单:evObj=newevent('click')代码>--所有浏览器?祝你好运<代码>单击
很简单。只需执行domElement.click()
@Rudie你是说jquerylement.click()
?不,我是说本机domElement.click()
。在控制台中尝试:document.querySelector('a')。单击()