问题:ScrollIntoView将元素隐藏在页眉/页脚后面。我的应用程序有页眉/页脚。
尝试了以下解决方案:
1)ScrollIntoView(true),如果元素向上并尝试从底部滚动,它会将Web元素隐藏在标题后面。
2)发送true/false,它可以工作,但我不知道元素的确切位置,所以不能每次都告诉框架向下/向上滚动元素。
3)直接点击(采取行动)元素,chrome会自动滚动到可见性,但标题是存在的,这就是为什么它隐藏在后面。
请让我知道是否有任何单个代码可以使元素可见,即使它的页眉/页脚存在。寻找解决方案是c#并使用chrome浏览器。
对此我有几点建议:
>
您可以应用以下过程:
您可以获取它在页面中的绝对位置,然后滚动到那里。
您可以使用操作API。
>
如果元素可见,则对元素执行操作。
By element = By.id("element_id");
if(driver.findElements(element).size()>0){
Actions action = new Actions(driver);
action.moveToElement(driver.findElement(element).perform();
if(driver.findElement(element).isDisplayed()){
driver.findElement(element).click();
}
}