我正在处理顶部有一个小框架的页面,当firefoxdriver尝试滚动到元素时,这会导致问题,因为firefoxdriver几乎总是以一种将元素置于页面的最顶部。当Firefox滚动到元素时,它会以该元素位于框架下的方式滚动,这会使元素不可能点击。修改FirefoxDriver自动滚动到元素
无论如何告诉firefoxdrive不要一直滚动页面顶部的元素?或者任何其他可靠的方法呢?
我正在处理顶部有一个小框架的页面,当firefoxdriver尝试滚动到元素时,这会导致问题,因为firefoxdriver几乎总是以一种将元素置于页面的最顶部。当Firefox滚动到元素时,它会以该元素位于框架下的方式滚动,这会使元素不可能点击。修改FirefoxDriver自动滚动到元素
无论如何告诉firefoxdrive不要一直滚动页面顶部的元素?或者任何其他可靠的方法呢?
当你运行这个时会发生什么?
WebElement element = driver.findElement(By.<your locator here>);
((JavascriptExecutor) driver).executeScript(
"arguments[0].scrollIntoView();", element
);
另外,哪些版本的Firefox和webdriver?特定的WebDriver版本支持有限范围的Firefox版本;你必须匹配他们。 – MikeJRamsey56
我使用Firefox 45,我试过了你的代码。它将它滚动到绝对顶端,这是在另一个框架或中途停留。 – Arya
和Selenium Java 2.53?好。请发布您的HTML。你在滚动中使用了什么元素定位器? – MikeJRamsey56
Java?红宝石?哪个框架? – MikeJRamsey56
java,我现在把标签放在 – Arya
这听起来像滚动条不是网页浏览器的滚动条。您可能需要使用JSExecutor来设置'element.scrollTop'来向上/向下滚动。 – Buaban