Javascript Grunt qunit click事件不工作
我一辈子都搞不懂如何在qunit中启动按钮点击事件。我正在使用grunt contrib qunit,我相信它使用phantomJS来运行测试。我尝试过很多人说的关于phantomJS的解决方案(比如这一个:),但它们似乎都不起作用Javascript Grunt qunit click事件不工作,javascript,unit-testing,gruntjs,phantomjs,qunit,Javascript,Unit Testing,Gruntjs,Phantomjs,Qunit,我一辈子都搞不懂如何在qunit中启动按钮点击事件。我正在使用grunt contrib qunit,我相信它使用phantomJS来运行测试。我尝试过很多人说的关于phantomJS的解决方案(比如这一个:),但它们似乎都不起作用 在模拟元素上的单击事件后,是否有人能够在命令行中使用grunt contrib qunit进行测试?确定我修复了我的问题。事实证明,PhantomJS实现了触摸事件,我的代码正在检查ontouchend事件并绑定到它。哇,我没想到!因此,我能够通过创建一个如下所示的
在模拟元素上的单击事件后,是否有人能够在命令行中使用grunt contrib qunit进行测试?确定我修复了我的问题。事实证明,PhantomJS实现了触摸事件,我的代码正在检查ontouchend事件并绑定到它。哇,我没想到!因此,我能够通过创建一个如下所示的函数来解决我的问题:
function fireClickEvent(el) {
var eventType = "ontouchend" in document.documentElement ? "touchstart" : "click";
var clickEvent = document.createEvent('MouseEvent');
clickEvent.initMouseEvent(eventType, true, true, window,
0, 0, 0, 0, 0, false, false, false, false, 0, null);
el.dispatchEvent(clickEvent);
}
在这里发布问题之前,我会再检查一下我的工作