<div id="container">
<p>
<div>a</div>
<div>b</div>
<div><span>foo</span>c</div>
</p>
<p>
<div>e</div>
<div>f</div>
</p>
<p>
<div>g</div>
<div><span>foo</span>h</div>
<div>i</div>
</p>
</div>
我想得到包含foo的最后一个div,即带有h的div。
答案 0 :(得分:1)
单独使用选择器无法做到这一点。你能做的最好的就是
driver.switchTo().defaultContent();
wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt(By.tagName("yourFrame")));
但是在运行选择器后,您仍然需要使用#container div:has(span:containsOwn(foo))
分别抓取最后一个元素。
答案 1 :(得分:1)
我会试试这个,但它不是一个纯粹的CSS解决方案,因为你不能轻易选择选择的最后一个元素。
Element el = doc.select("div:contains(foo):not(:has(div))").last();
我的选择器选择包含&#34; foo&#34;的所有div。但不包含任何其他div。