【问题标题】:Modify FirefoxDriver auto scroll to element修改 FirefoxDriver 自动滚动到元素
【发布时间】:2016-04-24 17:59:50
【问题描述】:

我正在处理一个顶部有一个小框架的页面,这会在 firefoxdriver 尝试滚动到元素时导致问题,因为 firefoxdriver 几乎总是以将元素置于页面最顶部的方式滚动.当 Firefox 滚动到该元素时,它会以该元素位于框架下方的方式滚动,这使得无法单击该元素。

有没有办法告诉firefoxdrive不要一直滚动页面顶部的元素?或者任何其他可靠的方法?

【问题讨论】:

  • Java?红宝石?哪个框架?
  • java,我现在把标签放进去
  • 滚动条好像不是浏览器的滚动条。您可能需要使用 JSExecutor 设置element.scrollTop 向上/向下滚动。
  • @Buaban 它滚动网页栏,但我不希望它将元素一直滚动到顶部。页面顶部有一些东西,

标签: java selenium selenium-webdriver webdriver selenium-firefoxdriver


【解决方案1】:

当你运行它时会发生什么?

WebElement element = driver.findElement(By.<your locator here>);
((JavascriptExecutor) driver).executeScript(
    "arguments[0].scrollIntoView();", element
);

【讨论】:

  • 另外,firefox 和 webdriver 的版本是什么?特定的 WebDriver 版本支持有限范围的 firefox 版本;你必须匹配它们。
  • 我使用的是 Firefox 45,我试过你的代码。它将它滚动到绝对顶部,在另一个框架或停留下。
  • 还有 Selenium Java 2.53?好的。请张贴您的 HTML。你在滚动中使用什么元素定位器?
  • 是的 Selenium Java 2.53。我正在使用 xpath 元素定位器。不幸的是,我无法发布 HTML 代码。
猜你喜欢
  • 2014-11-12
  • 2013-05-08
  • 1970-01-01
  • 1970-01-01
  • 2014-07-16
  • 2015-10-17
  • 2015-09-03
  • 2014-01-22
  • 1970-01-01
相关资源
最近更新 更多