1

我想Mouse Hover在我的应用程序中执行一些任务。我通过使用 javascriptExecutor 做到了这一点。在进入我的应用程序之前,我尝试了一些开放的应用程序。下面是使用的代码

使用代码

try{
driver = new FirefoxDriver();  
driver.manage().window().maximize();  
driver.get("http://www.hdfcbank.com/");  
WebElement ele = driver
                .findElement(By.xpath("//li[6]/div/a"));  
String javaScript = "var evObj = document.createEvent('MouseEvents');"
            + "evObj.initMouseEvent(\"mouseover\",true, false, window, 0, 0, 0,    0, 0, false, false, false, false, 0, null);"
            + "arguments[0].dispatchEvent(evObj);";  
JavascriptExecutor js = (JavascriptExecutor) driver;  
js.executeScript(javaScript, ele);
driver.findElement(By.xpath("//li[6]/div[2]/div[2]/div/ul/li[2]/a")).click();
catch(Exception e){
e.printStackTrace();
driver.quit();
}

当我执行上述代码时,我可以进行鼠标悬停,但单击操作失败。一件重要的事情是它无法执行quit()命令,因为我的浏览器挂起,直到我手动关闭。我的控制台没有收到任何错误。我不知道如何调试它。

任何帮助将不胜感激。

我知道Mouse Hover也可以通过Action Builder类来实现,但我需要它在 javascriptExecutor 中。

4

1 回答 1

1
catch(Exception e){
e.printStackTrace();
driver.quit();
}

您的代码是说您仅在发生异常时退出... move driver.quit(); 在捕获之外

于 2013-04-12T13:43:43.467 回答