如何修复Selenium中的“无法滚动到视图中”错误?

时间:2019-01-02 10:22:06

标签: c# selenium selenium-webdriver webdriver

我正在使用Selenium来使应用程序自动化,但是当我尝试单击<a>标签时,它抛出以下错误:

  

元素<a id="play_button" class="clickable myButton margin_t15 lang_57 medium_font" href="javascript:;">无法滚动到   视图。

我正在将Selenium与C#和Firefox V62配合使用!

此外,我知道该元素是隐藏的,它将在加载网页后5秒钟出现!现在如何解决此错误?

我也尝试了by.xpath(), by.name()和太多这样的方法!

这是我的代码:

IWebDriver driver = new FirefoxDriver();
driver.Url = "The Web Site";
driver.FindElement(By.Id("play_button")).Click();

1 个答案:

答案 0 :(得分:2)

您可以使用以下代码解决问题:

IJavascriptExecutor js = (IJavascriptExecutor) driver;
button = river.FindElement(By.Id("play_button"));
jse.executeScript("arguments[0].scrollIntoView(true);", button);
button.Click()

PS:您还可以使用显式等待来单击元素,然后单击它。

希望对您有帮助!