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(). 시간 초과(). implicitlyWait (60, TimeUnit.SECONDS); WebElement 요소 = driver.findElement (By.xpath (".//* id = 'main')/div [3]/button")); 작업 action = new 작업 (드라이버); action.moveToElement (element) .perform(); Thread.sleep (5000); –

답변

0

를 사용하여 동일한 코드.

  • 작업 표시 줄에 마우스 커서를 놓습니다. (0, 0) 브라우저 위치에

    또는

  • 이동 마우스 커서.

+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(); 
    } 

} 

이 귀하의 질문에 답을 알려줘 : 여기

는 작업 코드입니다.