1

ページをスクロールするときに表示されるイメージを選択する必要があります。イメージセットはページの一番下に表示され、さらにスクロールすると別のイメージセットがロードされます。要素がセレン/ javascriptを使用してページに読み込まれるまでウィンドウをスクロール

私はscroll()、scrollBy()、およびActionsメソッドを使用しようとしましたが、何も応答しませんでした。 しかし、scrollIntoView()メソッドだけを使用すると、ページがスクロールされます。スクロールの読み込みが完了した後にのみ、選択が必要な画像が表示されるため、ここではscrollIntoView()を使用できませんでした。スクロールウインドウがiframeとdivタグの内側にあることに注意してください。

((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

スクロールバーを持つ要素の検索方法がわかりません。単に検査要素を使用すると、divタグの1つの中にスクロールバーが存在します。それを見つける方法を教えてください – Giri

関連する問題