Maison > Questions et réponses > le corps du texte
L'utilisation de a.click(); n'est pas valide, cela fonctionnera évidemment à d'autres moments
而且就算那我获取了href 在用js打开也没反应 这是为什么呢
((JavascriptExecutor)driver).executeScript("window.open('"+href+"')");
((JavascriptExecutor)driver).executeScript("alert('"+href+"')");
alert能弹出
Mais window.open() ne répond pas. Cela fonctionne si je le tape directement sur la console de la page Web
習慣沉默2017-06-05 11:10:28
window.open() ouvre un nouvel onglet, vous devez changer de poignée. Voici deux méthodes pour votre référence :
public static void changeWindow(WebDriver driver){
// 获取当前页面句柄
String handle = driver.getWindowHandle();
// 获取所有页面的句柄,并循环判断不是当前的句柄,就做选取switchTo()
for (String handles : driver.getWindowHandles()) {
if (handles.equals(handle))
continue;
driver.switchTo().window(handles);
}
}
public static void changeWindowTo(WebDriver driver,String handle){
for (String tmp : driver.getWindowHandles()) {
if (tmp.equals(handle)){
driver.switchTo().window(handle);
break;
}
}
}
Quant à l'impossibilité de cliquer, cela peut être dû au fait que l'élément n'est pas explicitement visible, ou doit être mis au point, ou que vous n'utilisez pas correctement Selenium, mais il est recommandé d'essayer js click