0

マウスのホバードロップダウンがあり、ドロップダウンがホバー上に表示され、ドロップダウンからマウスポインタを移動すると消えます。私は"アクション"クラスをドロップダウン要素の上に置くことを試みましたが、マウスのホバーが実行された後にドロップダウンを見ることができません。ドロップダウンは、次の操作が実行されるまで保持されません。マウスのホバー上の要素を保持することができません

ホバーが実行されてからドロップダウンから要素を選択/クリックするためにドロップダウンがより長く表示されるような方法はありますか?

コード:

driver= new ChromeDriver(); 
driver.get("w3schools.com/howto/howto_css_dropdown.asp"); 
driver.manage().window().maximize(); 
driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS); 
WebElement element = driver.findElement(By.xpath(".//*@id='main']/div[3]/button")‌​); 
Actions action= new Actions(driver); 
action.moveToElement(element).perform(); 
Thread.sleep(5000); 

環境:あなたは、マウスのホバーアクション前の溶液以下のマウスホバーアクションのために書いたとしてみてください

Chrome version: 56.0.2924.87 (64-bit) 
Chrome driver: 2.27 
+1

下記のようにさらに情報を提供してください:1.あなたが試したコードを表示できますか? 2. HTML DOMを提供します。 3.要素のスクリーンショット。 – DebanjanB

+0

私は以下のコードに慣れています: driver = new ChromeDriver(); driver.get( "https://www.w3schools.com/howto/howto_css_dropdown.asp"); \t driver.manage()。window()。maximize(); \t driver.manage()。timeouts()。implicitlyWait(60、TimeUnit.SECONDS); WebElement要素= driver.findElement(By.xpath( ".//* id = 'main')/ div [3]/button")); アクションaction = newアクション(ドライバ); action.moveToElement(要素).perform(); Thread.sleep(5000); –

答えて

0

使用同じコード。

  • タスクバーにマウスカーソルを置いてください。 (0、0)ブラウザ位置で

    OR

  • 移動マウスカーソル。

+0

は、ホバーが私のために働く前にカーソル位置(0,0)を設定しています。ありがとう –

0

perform()の後、要素をたどる必要があります。ここで

は、作業コードです:

package demo; 

import java.util.List; 
import java.util.concurrent.TimeUnit; 

import org.openqa.selenium.By; 
import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.WebElement; 
import org.openqa.selenium.chrome.ChromeDriver; 
import org.openqa.selenium.interactions.Actions; 

public class MouseHoverDemo_w3school { 

    public static void main(String[] args) { 



     System.setProperty("webdriver.chrome.driver", "C:\\Utility\\BrowserDrivers\\chromedriver.exe"); 
     WebDriver driver = new ChromeDriver(); 
     driver.manage().window().maximize(); 
     driver.get("https://www.w3schools.com/howto/howto_css_dropdown.asp"); 
     driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); 
     WebElement ele = driver.findElement(By.xpath(".//div[@class='dropdown dropdown2']/button")); 
     Actions act = new Actions(driver); 
     act.moveToElement(ele).perform(); 
     List<WebElement> links = driver.findElements(By.xpath(".//div[@class='dropdown-content']/a")); 
     int total_count = links.size(); 
     for (int i=0; i<total_count; i++) 
     { 
      WebElement element = links.get(i); 
      String text = element.getAttribute("innerHTML"); 
      System.out.println("Link Name is : "+text); 

     } 

     driver.quit(); 
    } 

} 

が、これは、あなたの質問に答えるなら、私に教えてください。

関連する問題