元素不可见Selenium/C#

Nau*_*nja 5 c# selenium xpath selenium-webdriver

我通过Xpath获取按钮元素,但是当尝试单击它时,获取元素不可见异常.

<div class="modal-footer">
   <button id="btnRegister" type="button" class="btn btn-primary btn-block">Register</button>
</div>
Run Code Online (Sandbox Code Playgroud)

父div

<div class="modal fade in" id="registration-window" tabindex="-1" role="dialog" aria-labelledby="register-title" aria-hidden="false" style="display: block;">
Run Code Online (Sandbox Code Playgroud)

aho*_*olt 7

要添加到您可以尝试的事物列表:

问题可能比元素当前不可见更复杂一些.它前面可能有一个看不见的元素,无论你等多久,它都不会被看到.在这种情况下,您可以通过以下几种方式获得它:

使用javascript滚动到它:

JavascriptExecutor js = (JavascriptExecutor)driver;
js.executeScript("arguments[0].scrollIntoView()", yourElement);
Run Code Online (Sandbox Code Playgroud)

要么...

点击javascript:

JavascriptExecutor js = (JavascriptExecutor)driver;
js.executeScript("arguments[0].click()", yourElement);
Run Code Online (Sandbox Code Playgroud)