我已经尝试过这两个代码,它会被执行但是动作没有执行,任何人都可以告诉我为什么?
//Type one approach
Actions action = new Actions(Browser.Driver);
IWebElement sourceElement = Browser.Driver.FindElement(By.XPath(Filexpath));
IWebElement targetElement = Browser.Driver.FindElement(By.XPath(NewXpath));
//Type two approach
Actions Sourcebuilder = new Actions(Browser.Driver);
Actions SourceAction = Sourcebuilder.ClickAndHold(sourceElement);
Sourcebuilder.Build();
SourceAction.Perform();
/// move and drop
Actions builder = new Actions(Browser.Driver);
Actions action = builder.MoveToElement(targetElement);
builder.Release(targetElement);
builder.Build();
action.Perform();
提前致谢
答案 0 :(得分:3)
试用此代码:
Actions ac = new Actions(driver);
ac.dragAndDrop(source element, target element);
ac.build().perform();
它将点击并保持在源元素的位置,移动到目标元素的位置,然后释放鼠标。
或者
Actions ac = new Actions(driver);
ac.dragAndDropBy(source element, xOffset, yOffset);
ac.build().perform();
它将在源元素的位置单击并按住,移动给定的偏移量,然后释放鼠标。
或者
Actions ac = new Actions(driver);
ac.clickAndHold(onElement);
ac.moveToElement(toElement); or ac.moveToElement(toElement, xOffset, yOffset);
ac.build().perform();
它将执行上述两个代码的操作。
我在Java上编写这段代码。您可以转换为您指定的语言。
来自Actions.