2017-01-31 2 views
1

두 개의 iframe이 있습니다. iframe에서 이미지를 드래그하고 다른 iframe에 이미지를 드롭해야합니다. 나는 아래의 코드를 시도하고 그 코드가 작동하지 않는다.iframe에서 요소를 드래그하고 다른 iframe에 놓기

Actions builder = new Actions(driver); 
builder.moveToElement(fromElement); 
builder.clickAndHold(fromElement); 
builder.build(); 
builder.perform(); 
driver.switchTo().defaultContent(); 
WebElement pageFrame = driver.findElement(By.cssSelector("iframe[src='components/svg-edit-2.6-unmodified/svg-editor.html']")); 
driver.switchTo().frame(pageFrame); 
WebElement rightPanel = driver.findElement(By.id("guide_RIGHT_SAFETY_rect")); 
builder.moveToElement(rightPanel); 
builder.release(rightPanel); 
builder.build(); 
builder.perform(); 

또한 좌표를 사용하여 요소를 이동하려고 시도했지만 나에게도 효과가 없다.
action.clickAndHold(fromElement).moveByOffset(25, 0).release().perform();
누구든지이 문제에 대해 도움을 줄 수 있습니까?

+0

html을 공유 할 수 있습니까? –

+0

근무중인 웹 사이트 URL을 지정하십시오. – BIJAY

답변

0

아래 코드를 사용해보십시오.

driver.switchTo().frame(0);         //Move inside to the frame. 
WebElement body = driver.findElement(By.tagName("body")); 
body.click(); 
WebElement from = driver.findElement(By.xpath("//your xpath")); 
Actions act = new Actions(driver); 
act.clickAndHold(from).build().perform(); 
Thread.sleep(4000); 
driver.switchTo().defaultContent();      //Move outside to the frame. 

driver.switchTo().frame(1);        //Move inside to another frame. 
WebElement body = driver.findElement(By.tagName("body")); 
body.click(); 
WebElement to = driver.findElement(By.id("guide_RIGHT_SAFETY_rect")); 
act.clickAndHold(to).moveToElement(to).release(to).build().perform(); 
Thread.sleep(2000); 
driver.switchTo().defaultContent();      //Move outside to another frame. 
+0

이것은 작동하지 않습니다. 기본 콘텐츠로 전환하면 from 요소를 찾을 수 없습니다. – user3282742

+0

올바른 'xpath' 요소를 입력 했습니까? –

관련 문제