我想使用Selenium ChromeDriver在C#的网页上标记文字。这是我的代码:
var webElement = driver.GetElement(IdentifierValue, IdentifierType);
var actions = new Actions(driver);
actions.MoveToElement(webElement,
startX,
startY).ClickAndHold().MoveByOffset(offsetX, offsetY).Release().Perform();
它不起作用,似乎没有执行MoveByOffset操作。这似乎是ClickAndHold()
和MoveByOffset()
组合的问题。
当我执行MoveByOffset()
和ClickAndHold()
分开时,它的行为就像预期的那样。例如:
actions1.MoveToElement(webElement, startX, startY).Click().Perform();
Thread.Sleep(1000);
actions2.MoveByOffset(offsetX, offsetY).Perform();
Thread.Sleep(1000);
actions3.Click().Perform();
而且:
actions1.MoveToElement(webElement, startX, startY).ClickAndHold().Perform();
我在网上没有发现任何相关信息。那么有没有人经历过类似的事情或解决这个问题?