第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

無法使用java獲取IE中新打開的窗口的句柄

無法使用java獲取IE中新打開的窗口的句柄

Smart貓小萌 2023-09-27 15:10:42
我單擊代碼“Go”中的一個(gè)按鈕,打開一個(gè)新窗口。當(dāng)我檢查任務(wù)管理器時(shí),我可以看到 IE 的實(shí)例為 2,但getWindowHandles()無法獲取新打開的窗口的句柄,僅返回父窗口句柄。我用來執(zhí)行此操作的代碼是:SeleniumUtils.clickOnElement(webDriver, By.xpath("//input[@name='Go' and @value='Go']"), "Click on Go", reporter);SeleniumUtils.waitLoading(SeleniumUtils.WAIT_LONG);List<String> windowsList = new ArrayList<>();String parentWindow = webDriver.getWindowHandle();windowsList.add(parentWindow);String emailWindow = SeleniumUtils.changeDriverToTheNewWindow(webDriver, windowsList, windowsList.size()+1);windowsList.add(emailWindow);為了切換到新窗口,我編寫了一個(gè)函數(shù):public static String changeDriverToTheNewWindow(WebDriver webDriver, List<String> previousWindows, int numberOfWindows) {    try {        JavascriptExecutor jsExecuter = (JavascriptExecutor) webDriver;         Set<String> windows = Collections.emptySet();        try         {            WebDriverWait wait = new WebDriverWait (webDriver, 5);            wait.until(ExpectedConditions.numberOfWindowsToBe(numberOfWindows));                windows = webDriver.getWindowHandles();        }catch(Exception e) {            lLogger.error("Error getting the window handles.", e);            windows = webDriver.getWindowHandles();        }        for (String windowId : windows) {            if (!previousWindows.contains(windowId)) {                webDriver.switchTo().window(windowId);                jsExecuter.executeScript("window.focus");                //changeDriverToWindow(webDriver, windowId);                return windowId;            }        }    } catch (Exception e) {        lLogger.error("Error changing driver to the new window!", e);    }    return null;}打開窗口的 HTML 和 JS 代碼是:<td class="xyz-column"><link href="../Content/css/XYZ.css" rel="stylesheet" type="text/css"><script type="text/javascript">    function onMouseOver(control) {        control.src = '../Content/images/lookup.png';    }    function onMouseOut(control) {        control.src = '../Content/images/btn_lookup.png';    }</script>
查看完整描述

1 回答

?
藍(lán)山帝景

TA貢獻(xiàn)1843條經(jīng)驗(yàn) 獲得超7個(gè)贊

具體地說,就我而言,它是?... InternetExplorerOptions options = new InternetExplorerOptions(); options.merge(cap); WebDriver driver = new InternetExplorerDriver(options);

解決方案 1

ieCapabilities.setCapability("requireWindowFocus", false);

解決方案 2

添加這兩個(gè)之后,驅(qū)動(dòng)程序就能夠正確獲取窗口的句柄了。


查看完整回答
反對(duì) 回復(fù) 2023-09-27
  • 1 回答
  • 0 關(guān)注
  • 116 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)