eli*_*rel 4 javascript cypress
似乎它们是相同的。是否有过在输出之间有什么区别cy.get("a").find("b")和cy.get("a b")?
(其中a和b是一些选择器,例如div和span,或.someClass和.someOtherClass。)
rez*_*esh 19
正如您在问题中所述,cy.get("a").find("b")和之间没有区别cy.get("a b")。但是赛普拉斯中find和get命令之间最重要的区别在于它cy.get()是链接的cy,它总是document按照赛普拉斯文档中的说明在整个范围内寻找选择器。但正如赛普拉斯文档中再次指出的那样,发现工作如下:
获取特定选择器的后代 DOM 元素。
因此,该命令cy.get("a").find("b")返回b元素的所有后继a元素,但会cy.get("a").get("b")查找所有a和b元素,而不管它们是父元素还是子元素。
结果没有差异,但是实现上却有所不同。
在.find()命令文档中:
该命令的查询行为与
.find()jQuery中的工作方式完全匹配。
换一种说法,
cy.get("a").find("b");
Run Code Online (Sandbox Code Playgroud)
等效于以下JQuery:
$("a").find("b");
Run Code Online (Sandbox Code Playgroud)
$("a").find("b");将产生与相同的结果$("a b"),但将使用不同的方法到达那里。
我在相当复杂的页面上做了一些测试以确认这一点:
请注意,cy.get("td").find("tr")和的数字结果如何相同cy.get("td tr")。
| 归档时间: |
|
| 查看次数: |
1760 次 |
| 最近记录: |