2017-01-31 38 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

指定您在其中工作的網站網址。 – 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'? –

相關問題