jQuery技术:QUnit for javascript测试事件

我是javascript测试的新手。 我能够测试qunit的所有其他function。 但无法弄清楚如何使用qunit来测试事件处理程序的function。 在jquery event.js测试套件中看到一个用于触发器,绑定和委托函数的示例后,我尝试了下面的内容。

test('Event Handling', function () { var hai = function() { console.log('Clicked'); ok(true, 'click event triggered'); }; eventLib.addEvent(document.getElementById('qunit-header'), 'click', hai); $('#qunit-header').trigger('click'); ok(true, 'It happend'); }); 

这里eventLib是我编写的用于附加和分离事件的函数。 但是上面的代码似乎没有在qunit html接口上给出任何类型的输出[除了它发生]。 但是,如果我手动单击标题,事件处理程序将记录到控制台。 我正在使用jquery v1.6.2

    似乎.trigger只运行通过jQuery绑定的事件,而不是通过其他方式。 在Chrome上,这只记录jquery : http : //jsfiddle.net/LYxD4/ 。

     $("#x").get(0) .addEventListener("click", console.log.bind(console, "native"), false); $("#x").on("click", console.log.bind(console, "jquery")); $("#x").trigger("click");​ 

    您可以改为使用.dispatchEvent : http : //jsfiddle.net/LYxD4/1/ 。

     var event = document.createEvent("HTMLEvents"); event.initEvent("click", true, true); $(...).get(0).dispatchEvent(event);​ 

      以上就是jQuery教程分享QUnit for javascript测试事件相关内容,想了解更多jQuery开发(异常处理)及jQuery教程关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/jquerytutorial/561878.html

      (0)
      上一篇 2021年2月5日
      下一篇 2021年2月5日

      精彩推荐