2017-10-06 2 views
0

Si certains boutons sont visibles ou non, mon programme effectue différentes actions. Afin de voir ces boutons, je dois faire défiler vers eux.Sélénium incorrect défiler dans la vue

Je veux voir ceci: enter image description here

à la place que je vois comme ceci: enter image description here

J'utilise ce code:

JavascriptExecutor je=(JavascriptExecutor) driver; 
    WebElement elem=driver.findElement(By.xpath("//a[contains(.,'"+username+"')]/ancestor::div[contains(@class, 'js-answer-element')]")); 
    je.executeScript("arguments[0].scrollIntoView(true)", elem); 

Comment faire défiler jusqu'à ce que toute la place est en vue ?

Répondre

1

Le conteneur défile en haut de la vue, ce qui est exactement ce que vous avez demandé en appelant arguments[0].scrollIntoView(true).

Si vous voulez en bas à la place:

je.executeScript("arguments[0].scrollIntoView(false)", elem); 

Ou avec un décalage par rapport au sommet:

je.executeScript("arguments[0].scrollIntoView(true); window.scrollBy(0, -60);", elem);