如何在Chrome devtool控制台上触发点击事件?

时间:2013-09-16 08:29:11

标签: javascript debugging google-chrome-devtools

如何使用Chrome-devtool控制台测试我的javascript是否有效?我找到了xpath并将其转换为css定位器。基本上它是一个按钮,将颜色从灰色变为blye。

这是我的代码段: browser.execute_script(" $(' button.nominate'。)触发器('抽头');&#34)

在控制台上,我尝试了类似的内容:

  

$(' button.nominate&#39)。触发器('挖掘&#39)

结果如下所示:

  

[]

我以为会点按按钮

1 个答案:

答案 0 :(得分:7)

我想您正在对您的移动应用进行某种功能测试。我前段时间做了同样的事情(使用CasperJS),在这个过程中,我创建了这个函数:

// I've commented out CasperJS specific stuff, don't use it if you don't need it
function triggerEventOnPage(selector, eventName, memo) {
    //casper.evaluate(function(selector, eventName, memo){
        var event;
        var element = document.querySelector(selector);

        event = document.createEvent("Event");
        event.initEvent(eventName, true, true);
        event.memo = memo || { };

        element.dispatchEvent(event);
    //}, selector, eventName, memo);
    //wait();
}

您可以通过调用:

在测试中使用它
triggerEventOnPage(".edit-list-button", 'tap');

但请注意,没有原生tap事件。只有touchstarttachmovetouchend个事件,tap的实现基于这三个事件完成。因此,您正在使用的tap事件的实现可能与我使用的事件不同,上述功能可能对您不起作用。

编辑:,因为您使用的是jQuery,$('button.nominate').trigger('tap')应该可以正常使用。 @NULL可能是你的选择器无效的。