prevAll
获取一组匹配的DOM元素中每个DOM元素的所有前一个同级元素。
info
该命令的查询行为与jQuery中的
.prevAll()
完全一致。
语法
.prevAll()
.prevAll(selector)
.prevAll(options)
.prevAll(selector, options)
用法
正确用法
cy.get('.active').prevAll() // 获取`.active`之前的所有链接
错误用法
cy.prevAll() // 错误,不能直接从'cy'链式调用
cy.getCookies().prevAll() // 错误,'getCookies'不返回DOM元素
参数
selector (字符串选择器)
用于过滤匹配DOM元素的选择器。
options (对象)
传入选项对象以改变.prevAll()
的默认行为。
选项 | 默认值 | 描述 |
---|---|---|
log | true | 在命令日志中显示该命令 |
timeout | defaultCommandTimeout | 在超时前等待.prevAll() 解析的时间 |
生成结果
.prevAll()
返回它找到的新DOM元素。.prevAll()
是一个查询命令,可以安全地链式调用其他命令。
示例
无参数
查找.third
之前的所有同级元素
<ul>
<li>苹果</li>
<li>橙子</li>
<li class="third">香蕉</li>
<li>菠萝</li>
<li>葡萄</li>
</ul>
// 返回 [<li>苹果</li>, <li>橙子</li>]
cy.get('.third').prevAll()
选择器
查找每个li
的所有前一个同级元素,仅保留带有selected
类的元素
<ul>
<li>苹果</li>
<li>橙子</li>
<li>香蕉</li>
<li class="selected">菠萝</li>
<li>葡萄</li>
</ul>
// 返回 <li>菠萝</li>
cy.get('li').prevAll('.selected')
规则
要求
.prevAll()
必须链式调用在返回DOM元素的命令之后。
断言
超时设置
.prevAll()
可能因等待元素 存在于DOM中而超时。.prevAll()
可能因等待添加的断言通过而超时。
命令日志
查找.active
li之前的所有元素
cy.get('.left-nav').find('li.active').prevAll()
以上命令将在命令日志中显示为:

当点击命令日志中的prevAll
时,控制台会输出以下内容:
