我有一系列的div元素,其中有些包含h2元素作为子代(直接或间接(后代))。我正在寻找JavaScript或jquery给我这样div元素的索引。此外,我想从特定的div元素开始搜索。我的意思是一个div元素,其索引大于包含xh2。以下代码在所有包含divsh2的序列中找到那些。但是,某些divs可能不包含h2,因此应计算在内。

$(".myDivs h2:gt(2)").eq(0)

HTML示例:
<div class='myDivs'></div>
<div class='myDivs'><h2>Hi</h2></div>
<div class='myDivs'></div>
<div class='myDivs'><div><h2>How are you</h2></div></div>
<div class='myDivs'></div>

如果是x=2,我希望第四个div的索引为3,且类myDivs包含h2

最佳答案

这是我到目前为止发现的,可以正常工作:

$(".myDivs:gt("+x+"):has(h2)").eq(0).index()

由于不推荐使用gt,因此更好的解决方案是:
$(".myDivs").slice(x).has("h2").first().index()

07-24 09:46
查看更多