我通过单击 c# 中的 selenium 中的某些内容打开了一个新选项卡。我想在更改到新选项卡后滚动,但出现超时错误。
我收到超时消息并且没有滚动。
这是 C# 代码。
二手 Chrome 79
Chrome 选项是
options.AddArguments("handlesAlerts=false");
options.AddArguments("--disable-infobars");
options.AddArguments("--no-sandbox");
options.AddArguments("--disable-background-networking");
options.AddArguments("--disable-component-extensions-with-background-pages");
options.AddArguments("--dns-prefetch-disable");
options.AddArguments("--ignore-certificate-errors");
options.AddArguments("--ignore-certificate-errors-spki-list");
options.AddArguments("--ignore-ssl-errors");
options.AddArguments("--allow-running-insecure-content");
options.AddArguments("lang=ko_KR");
if (this.driver.WindowHandles.Count > 1)
{
this.driver.SwitchTo().Window(this.driver.WindowHandles[1]);
}
Utils.sleep(3000);
((IJavaScriptExecutor)this.driver).ExecuteScript("window.scrollBy(0,500);");
你可以通过两个步骤来做到这一点,
搬到新的tab
并做scroll
there.
ArrayList<String> AllTabs = new ArrayList<String> (driver.getWindowHandles());
driver.switchTo().window(AllTabs.get(1));
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("window.scrollBy(0 , window.innerHeight)");
完成后您可以关闭该选项卡。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)