我有一系列的div
元素,其中有些包含h2
元素作为子代(直接或间接(后代))。我正在寻找JavaScript或jquery给我这样div
元素的索引。此外,我想从特定的div
元素开始搜索。我的意思是一个div
元素,其索引大于包含x
的h2
。以下代码在所有包含divs
的h2
的序列中找到那些。但是,某些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()