2012-01-16 68 views
8

我有網頁上的按鈕,按鈕,當我通過IE瀏覽器運行的webdriver不會點擊 - 我已經嘗試下面的解決方法,但沒有運氣 - 通過變通辦法硒點擊不與InternetExplorerDriver

點擊使用Javascript:

((JavascriptExecutor) driver).executeScript("$(arguments[0]).click()", webElement) 

使用的SendKeys:

webElement.SendKeys(keys.Enter) 

使用動作生成器

Actions test = new Actions(driver); 
     test.moveToElement(webElement); 
     test.clickAndHold(); 
     test.release(); 
     test.build(); 
     test.perform(); 

確保窗口是活動之一,則父對象上點擊,那麼對象本身

問題是,他們沒有工作。我檢查了Firefox和Chrome,腳本運行良好。我已經確認使用IE時正在找到該元素。有沒有其他解決辦法可以嘗試?

+0

您是否有翻頁問題的示例頁面?如果它可以與其他驅動程序正常工作,則可以將其作爲錯誤提交。 – 2012-01-16 12:36:37

+0

不幸的是只能在內部應用程序上重現。通過切換窗口焦點,強制滾動,單擊父元素,單擊元素,然後發送Javascript來設法解決該問題。顯然在那裏的某處過度殺傷,但只是很高興它的工作。 – Dave 2012-01-16 14:04:52

+3

我認爲,IE窗口必須是最頂層,並重點進行了大量的動作才能正常工作。至少這是我的經驗。 – 2012-01-16 14:14:50

回答

1

如果該按鈕是表單提交按鈕,則可以在表單的其他字段上使用:webElement.submit()

4

似乎你打算使用JQuery風格點擊...正常的JavaScript風格點擊應該工作。

試試這個:

((JavascriptExecutor) driver).executeScript("arguments[0].click();", webElement) 

我總是發現成功與點擊IE瀏覽器中的一個元素以下。

  1. 如果是一個複選框/收音機:webElement.click();
  2. 可點擊輸入元件:webElement.sendKeys("\n");
  3. 對於其他元件,使用上面所述JS風格點擊。
+0

如果可以,我會抱你! – Conner 2014-01-20 20:14:23

+0

@Conner - 謝謝,你讓我的一天:) – KrishPrabakar 2014-01-27 06:10:48