blur
使聚焦的元素失去焦点。
在 .blur()
之后继续链式调用依赖于目标元素的命令是不安全的。
caution
当前元素必须处于聚焦状态。如果要在失去焦点前确保元素已聚焦,可以尝试先使用 .focus()
再调用 .blur()
。
cy.get('button').as('btn').focus()
cy.get('@btn').blur()
语法
.blur()
.blur(options)
用法
正确用法
cy.get('[type="email"]').blur() // 使邮箱输入框失去焦点
cy.get('[tabindex="1"]').blur() // 使具有 tabindex 的元素失去焦点
错误用法
cy.blur('input') // 错误,不能从 'cy' 开始链式调用
cy.window().blur() // 错误,'window' 不返回 DOM 元素
参数
options (Object)
传入选项对象以改变 .blur
的默认行为。
选项 | 默认值 | 描述 |
---|---|---|
log | true | 在命令日志中显示该命令 |
force | false | 强制执行操作,禁用检查元素是否聚焦 |
timeout | defaultCommandTimeout | 等待 .blur() 解析的超时时间,超过则超时 |
生成结果
.blur()
返回与传入时相同的目标元素。- 在
.blur()
之后继续链式调用依赖于目标元素的命令是不安全的。
示例
无参数
使评论输入框失去焦点
cy.get('[name="comment"]').type('Nice Product!')
cy.get('[name="comment"]').blur()