我有一个适用于大多数情况的滚动方法,但我有一个不滚动的实例。
这是方法:
public static void scrollPanelUp(WebElement element, WebDriver driver) {
debug.print(thisClass + " scrolling up...");
try {
// Create instance of Javascript executor
JavascriptExecutor je = (JavascriptExecutor) driver;
// now execute query which actually will scroll until that element is appeared
// on page.
je.executeScript("arguments[0].scrollIntoView(true);", element);
debug.print(thisClass + " scrolled up!");
} catch (Exception e) {
System.err.println(thisClass + " error in scrollPanelUp: " + e.getMessage());
e.printStackTrace();
}
}
为什么在这种情况下不滚动的任何想法?
答案 0 :(得分:0)
根据可用的代码,我将首先查看您传递的元素。如果它没有滚动到元素,我会建议它不在页面上。但除此之外,如果没有HTML,它会尝试滚动,或者调用它的代码。诊断问题非常困难。
然而,这是我过去使用过的代码片段对我有用:
((IJavaScriptExecutor)driver).ExecuteScript("arguments[0].scrollIntoView(true);", element);