【问题标题】:How do I select a Right Click Menu Item on Browser Menu with Protractor/Javascript?如何使用量角器/Javascript 在浏览器菜单上选择右键单击菜单项?
【发布时间】:2015-06-26 14:08:31
【问题描述】:

我在执行右键单击后尝试选择“返回”。我可以得到右键菜单。当我尝试选择“返回”时出现错误。 代码如下:

browser.driver.findElement(By.linkText("Back")).click();

我在 MAC-OS 上使用 Chrome 浏览器。

这是错误:

消息:NoSuchElementError:没有这样的元素(会话信息: chrome=43.0.2357.130)(驱动程序信息:chromedriver=2.14.313457 (3d645c400edf2e2c500566c9aa096063e707c9cf),平台=Mac OS X 10.10.3 x86_64) (警告:服务器未提供任何堆栈跟踪 信息)命令持续时间或超时:23毫秒

【问题讨论】:

  • 你遇到了什么错误?
  • 右键单击不是网络的东西.. 只是不要。
  • 显示如何执行右键单击以及菜单的 HTML 结构。
  • @alecxe 我正在尝试进入浏览器的右键菜单以选择“返回”。这是代码:'browser.driver.actions().click(protractor.Button.RIGHT).perform(); // 用于鼠标右键单击。 browser.driver.actions().sendKeys(protractor.Key.ARROW_DOWN).perform(); //发送向下箭头。 browser.driver.actions().sendKeys(量角器.Key.ENTER).perform(); // 发送回车。'在 Stackoverflow 上找到了这段代码。 -莱尔

标签: javascript menu protractor right-click


【解决方案1】:

您可以使用以下 jQuery 代码来检测 鼠标右键

$('#element').mousedown(function(event) {
    switch (event.which) {
        case 1:
            alert('Left Mouse button pressed.');
            break;
        case 2:
            alert('Middle Mouse button pressed.');
            break;
        case 3:
            alert('Right Mouse button pressed.');
            break;
        default:
            alert('You have a strange Mouse!');
    }
});

您可以调用以下代码来执行后退按钮操作(或转到最后访问的页面)

window.history.back();

希望这是您正在寻找的。​​p>

【讨论】:

  • 我要做的是让浏览器菜单出现并在出现的浏览器菜单上选择不同的项目。我需要,因为它与应用程序交互。
【解决方案2】:

您可能试图在菜单出现之前点击它。

var driver = browser.driver,
 wd = browser.wd,
 until = wd.until,
 elementToRightClick = driver.findElement(wd.By.linkText('foo'));
 driver.actions().click(elementToRightClick,wd.Button.RIGHT).perform(); 
 driver.wait(until.elementIsVisible(driver.findElement(wd.By.linkText('back')),5000, 'Element back was not visibile');
 driver.findElement(wd.By.linkText('back')).click();

【讨论】:

  • 谢谢,但是上面的代码不起作用。问题是找不到“返回”。
  • 我在等待的早些时候有一个错字。现在编辑它。您的右键单击是否有效,您确定返回的选择器正确吗?
  • 右击确实有效。我看到菜单了。将尝试您编辑的代码。会让你知道会发生什么。谢谢!!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-04-23
  • 2012-04-19
  • 1970-01-01
  • 1970-01-01
  • 2016-03-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多