首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Selenium元素隐藏在浮动标题后面。

Selenium元素隐藏在浮动标题后面。
EN

Stack Overflow用户
提问于 2015-12-30 15:26:17
回答 4查看 4.8K关注 0票数 5

如果需要滚动,总是将元素放在页面的顶部,但是它不会考虑浮动的标题。现在我创建了一个解决方案

代码语言:javascript
运行
复制
Actions actions = new Actions(this.webdriver);
actions.sendKeys(Keys.ARROW_UP).perform();

有没有一个更好的解决方案,告诉webdriver将一个元素集中在屏幕中间,或者与顶部有固定的距离?

橙色部分来自按钮,蓝色部分是标题:

橙色隐藏按钮

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2016-03-01 19:36:34

使用javascript将元素显示在视图中。以下是一个可能的解决方案:

  1. 使用selenium将元素导入视图端口。
  2. 使用javascript找出元素是否被另一个元素阻塞(浮动页眉/页脚等)。
  3. 使用javascript滚动到视图端口的中间。

参见我在这里创建的javascript实用程序类:https://github.com/gterre/stuff

usage...JavascriptUtils.bringIntoView(WebElement元素);

我相信你可以根据你的需要修改这个脚本。

票数 1
EN

Stack Overflow用户

发布于 2018-02-22 05:28:47

在我的例子中,我选择隐藏浮动元素。

代码语言:javascript
运行
复制
top = dr.find_element_by_xpath('//div[@node-type="top_all"]')
dr.execute_script("arguments[0].setAttribute('style','display:none')", top)

之后,移动到我想要的元素,我甚至可以添加一个偏移量。

票数 2
EN

Stack Overflow用户

发布于 2016-10-25 13:00:10

Selenium还可以在与其交互之前不将项滚动到窗口的顶部(因此可以将它们隐藏在浮动的标题后面),而可以将其隐藏到底部。

这是通过“elementScrollBehavior”功能实现的,该功能可以设置为1以滚动到底部。

这个堆栈溢出的原因是它是如何在水豚完成的

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34532306

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档