【问题标题】:How to emulate press Enter key with Zombie.js如何使用 Zombie.js 模拟按 Enter 键
【发布时间】:2012-08-11 10:31:49
【问题描述】:

你知道如何在 Zombie.js 中按 Enter 键吗?

提前致谢。

【问题讨论】:

    标签: javascript zombie.js


    【解决方案1】:

    仅使用僵尸 API 还没有办法做到这一点。这是因为.fire() 方法不允许您传递除事件名称之外的任何事件数据(这对于说明哪个 keyCode 与该键事件相关联是必要的)。

    【讨论】:

      【解决方案2】:

      WTK 是正确的,zombie.js 中没有原生方式,但我认为您可以添加一个 javascript 函数来模拟 enter 按键并从zombie.js 触发它,如下所示:

      如果你可以访问页面源,在你的页面上添加一个函数来模拟回车键:

      function pressEnterKey(elmSelector){
        elmSelector = elmSelector || 'document'
        var e = jQuery.Event("keypress");
        e.which = 13; 
        e.keyCode = 13;
        $(elmSelector).trigger(e);
      }
      

      从zombie.js 触发它:

      browser.evaluate("pressEnterKey()");
      

      如果您无权访问源代码,您可以使用类似的方式在页面上注入脚本。记得在确保页面准备好之后使用 browser.wait:

      var injectedScript = browser.document.createElement("script");
      injectedScript.setAttribute("type","text/javascript");
      injectedScript.innerText = '...pressEnterKey function text here...'
      browser.body.appendChild(injectedScript); 
      

      【讨论】:

        猜你喜欢
        • 2015-10-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-09
        • 1970-01-01
        • 2013-07-06
        相关资源
        最近更新 更多