如何使用jquery查找某个元素之后的所有满足条件元素?

我想通过jquery,查找指定元素之后的,所有满足条件元素(包括兄弟节点、子节点和无关节点)。例如下面的代码中:

<div>
<span id="a"/>
<span id="b"/>
<span id="c">
<div><span id="d"/></div>
</span>
</div>
<div>
<span id="e"/>
</div>

如何查找出id=b的span元素之后的所有span元素,并按顺序保存起来。

2个回答

如果是同级别的 $("#b").next("span"),如果是上级的$("#b").parent().next("span")。再上级同理

function getSpan(b){

    var next = $("#"+b).parent().find("span"); 
    var all = $("#"+b).parent().siblings().find("span") 
    return $.merge(next,all)

}

getSpan("b")

saygood999
王威振的csdn 回复grayqian: 或者这样function getSpan(b){ var next = $("#"+b).parent().find("span"); var all = $("#"+b).parent().siblings().find("span") return $.merge(next,all) }
11 个月之前 回复
saygood999
王威振的csdn 回复grayqian: 可以像这样定义一个函数。参数就是要定位的元素
11 个月之前 回复
saygood999
王威振的csdn 回复grayqian: 回复grayqian: function getSpan(b){ var next = $("#"+b).parent().find("span"); var all = $("#"+b).parent().siblings().find("span") var array = []; array[0] = next; array[1] = all; return array; }
11 个月之前 回复
grayqian
grayqian 这样没办法获取到元素e的,不过如果e和b有相同的祖先,可以通过parents("div").find获得所有span,再遍历取b后面的span
11 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问