#1 楼
给定要偏移的元素,可以移动鼠标并单击“动作”。您不能在浏览器内容窗口之外单击,也不能控制操作系统元素。moveToElement(WebElement toElement, int xOffset, int yOffset)
Moves the mouse to an offset from the top-left corner of the element.
代码(Java)如下所示:
#2 楼
我需要使用量角器在javascript中执行此操作: browser.actions()
.mouseMove(
element(by.css('.material-dialog-container'))
, -20, -20 // pixel offset from top left
)
.click()
.perform();
评论
我认为应该是mouseMove(element(by.css('。material-dialog-container')),{x:-20,y:-20})
– Dziamid
2015年4月2日在10:25
#3 楼
使用MoveToElement
,您可以找到或单击任何想要的点,只需定义第一个参数,它可以是在实例WindowsDriver时创建的会话(winappdriver)或驱动程序(以其他方式)。否则,您可以将网格(我的情况),列表,面板或任何您想要的内容设置为第一个参数。注意:第一个参数元素的左上角将是位置
X = 0
和Y = 0
Actions actions = new Actions(this.session);
int xPosition = this.session.FindElementsByAccessibilityId("GraphicView")[0].Size.Width - 530;
int yPosition = this.session.FindElementsByAccessibilityId("GraphicView")[0].Size.Height- 150;
actions.MoveToElement(this.xecuteClientSession.FindElementsByAccessibilityId("GraphicView")[0], xPosition, yPosition).ContextClick().Build().Perform();
#4 楼
使用滑动,除了将x和y的位置保持在开始和结束位置相同(并使持续时间真正缩短)之外。例如。触摸(540,905):
driver.swipe(540,905,540,905,50);
评论
您可以将窗口本身用作已知元素,以便单击绝对的x,y位置吗?如果是这样,您如何引用该窗口?
–道格
2014年9月13日23:21
@Doug我不确定,但是您可以尝试从左上角开始的body元素。如果不是,请问一个新问题,因为它有些新奇而又不同。
– Niels van Reijmersdal
2014-09-14 8:52
如果您希望包含整个屏幕的Web元素可以作为目标,则可以尝试,和