rightclick
右键点击一个DOM元素。
在.rightclick()
之后继续链式调用依赖该主题的命令是不安全的。
caution
.rightclick()
不会打开浏览器原生的上下文菜单。.rightclick()
应用于测试应用对右键点击相关事件(如contextmenu
)的处理。
语法
.rightclick()
.rightclick(options)
.rightclick(position)
.rightclick(position, options)
.rightclick(x, y)
.rightclick(x, y, options)
用法
正确用法
cy.get('.menu').rightclick() // 右键点击.menu
cy.focused().rightclick() // 右键点击获得焦点的元素
cy.contains('Today').rightclick() // 右键点击第一个包含'Today'的元素
错误用法
cy.rightclick('button') // 错误,不能链式调用'cy'
cy.window().rightclick() // 错误,'window'不返回DOM元素
参数
position (String)
右键点击的位置。默认位置是center
。有效位置包括topLeft
、top
、topRight
、left
、center
、right
、bottomLeft
、bottom
和bottomRight
。

x (Number)
距离元素左侧的像素数,用于指定右键点击的位置。
y (Number)
距离元素顶部的像素数,用于指定右键点击的位置。
options (Object)
传入一个选项对象以改变.rightclick()
的默认行为。
选项 | 默认值 | 描述 |
---|---|---|
altKey | false | 激活alt键(Mac上是option键)。别名:optionKey 。 |
animationDistanceThreshold | animationDistanceThreshold | 元素随时间必须超过的像素距离,以被视为动画。 |
ctrlKey | false | 激活control键。别名:controlKey 。 |
force | false | 强制执行操作,禁用等待可操作性 |
log | true | 在命令日志中显示命令 |
metaKey | false | 激活meta键(Windows键或Mac上的command键)。别名:commandKey 、cmdKey 。 |
multiple | false | 依次点击多个元素 |
scrollBehavior | scrollBehavior | 在执行命令前,元素应滚动到的视口位置 |
shiftKey | false | 激活shift键。 |
timeout | defaultCommandTimeout | 等待.rightclick() 解析的超时时间 |
waitForAnimations | waitForAnimations | 是否在执行命令前等待元素完成动画。 |
生成结果
.rightclick()
返回与给定主题相同的主题。- 在
.rightclick()
之后继续链式调用依赖该主题的命令是不安全的。
示例
无参数
右键点击菜单
cy.get('#open-menu').rightclick()
位置
指定元素的角落进行右键点击
右键点击DOM元素的右上角。
cy.get('#open-menu').rightclick('topRight')
坐标
指定相对于左上角的明确坐标
下面的右键点击将在元素内部执行(距离左侧15px,距离顶部40px)。
cy.get('#open-menu').rightclick(15, 40)
选项
强制右键点击,无论其可操作性状态如何
强制右键点击会覆盖Cypress应用的可操作性检查,并自动触发事件。
cy.get('#open-menu').rightclick({ force: true })