【问题标题】:Protractor CCS Selector can't locate element on hidden toolbar量角器 CSS 选择器无法在隐藏的工具栏上找到元素
【发布时间】:2018-08-30 15:49:51
【问题描述】:

我单击的链接会打开一个包含 PDF 文档的新窗口。我切换到新窗口,我通过获取 URL 验证了我是否打开了该窗口。窗口顶部有一个工具栏,当窗口打开时它会显示几秒钟,然后会隐藏起来,除非您再次移动鼠标。我正在尝试单击“下载”按钮,但我尝试的任何操作都会导致 CSS 选择器找不到该元素的错误。我怀疑这是因为动画工具栏的性质,但我不确定。起初我只是尝试常规点击:

element(by.id('download').click;

那行不通。于是我尝试用鼠标导航点击它:

browser.driver.actions().mouseMove(element(by.id('download'))).perform();
element(by.id('download')).click();

我也尝试过通过 css 选择:

element(by.css('#download').click();

All give me -Failed: No element found using locator.

有人可以告诉我我正在做的事情是否可行,如果可以,我如何才能完成它?

screencapture

Element

【问题讨论】:

  • 使用浏览器。等到下载图标在 UI 中可见。

标签: javascript css-selectors protractor


【解决方案1】:

这更像是一种变通方法而不是解决方案,但是对于由于某种原因不可见的元素(被其他元素覆盖或仅在悬停时工作)对我有用的是注入脚本。喜欢: browser.executeScript( "document.querySelector('[id=\"download\"]').click()" );

【讨论】:

  • 我尝试了您的建议,但查询选择器语句正在创建一个空值并给出错误。显然它仍然看不到页面上的元素。顺便说一句,我什至无法在 Chrome 的控制台开发工具中查询元素。
猜你喜欢
  • 2015-08-21
  • 2016-03-04
  • 1970-01-01
  • 2012-09-03
  • 1970-01-01
  • 2015-01-15
  • 1970-01-01
  • 1970-01-01
  • 2016-03-24
相关资源
最近更新 更多