1

我需要選擇在滾動頁面時出現的圖像。一組圖像加載到頁面底部並進一步向下滾動加載另一組圖像。我試過使用scroll(),scrollBy()和Actions方法,但沒有人迴應。 但是單獨使用scrollIntoView()方法會滾動頁面。因爲我需要選擇的圖像只有在滾動加載完成後纔出現,所以我無法在這裏使用scrollIntoView()。請注意滾動窗口即時嘗試是內部框架和div標籤。滾動窗口,直到元素被加載到頁面中使用硒/ javascript

((JavascriptExecutor) driver).executeScript("scroll(0,400)"); 

((JavascriptExecutor) driver).executeScript("window.scrollBy(0,250)", ""); 

Actions action = new Actions(driver); 
action.sendKeys(Keys.PAGE_DOWN); 
+0

你試過滾動到元素位置? – noor

+0

元素僅在滾動後可見。所以不能使用滾動來。 – Giri

回答

1

要滾動到底部,請將scrollTop屬性設置爲最大值。具有滾動條的容器通常是<body>

((JavascriptExecutor)driver).executeScript(
    "document.body.scrollTop = -1 >>> 1"); 

<html>

((JavascriptExecutor)driver).executeScript(
    "document.documentElement.scrollTop = -1 >>> 1"); 

或滾動<div style="overflow: scroll;">

WebElement div = driver.findElement(By.cssSelector(...)); 
((JavascriptExecutor)driver).executeScript(
    "arguments[0].scrollTop = -1 >>> 1", div); 

請注意,您首先需要設置的背景上目標框架。

+0

我試了兩個代碼,但沒有幫助。那麼我們需要在什麼地方設置容器?我已經切換到iframe,並嘗試這段代碼沒有爲我滾動, – Giri

+0

哪個元素有滾動條? –

+0

我不知道如何找到有滾動條的元素。只要使用inspect元素找到滾動條就存在於div標籤的一個裏面。請讓我知道如何找到它 – Giri

相關問題