gpt4 book ai didi

jquery - 与 jQuery find() 相反,不是 not()?

转载 作者:行者123 更新时间:2023-11-30 23:55:58 25 4
gpt4 key购买 nike

给定以下 HTML,哪个 jQuery 选择器会选择最后一个“blah blah”span,而不是第一个?

<div class='d1'>
<span>
<a>blee
<span> <!-- don't select this span -->
<span>blah</span> blah
</span>
</a>
</span>
</div>

<br/>

<div class='d1'>
<span>
<a>blee
<span> <!-- select this span -->
blah blah
</span>
</a>
</span>
</div>

我尝试过使用 not() 的变体,但无法弄清楚。看来我需要的是一个找到第一个跨度的选择器,但如果它包含另一个跨度则将其排除。像这样的东西:

$('.d1 span a span').not(':has("span")')

但这并不能解决问题。我错过了什么?

最佳答案

如果我正确理解了你的问题,那么你所缺少的只是一个子组合器:

$('.d1 span a > span').not(':has("span")')

这是一个working example .

您需要这个的原因是 .d1 span a span 将匹配 a两者 span 后代> 第一个 .d1 元素中的元素。 .not() 调用将排除外部的,但内部的仍然是匹配集的一部分。通过添加子组合器,仅选择外部 span,然后通过调用 .not() 将其删除。

关于jquery - 与 jQuery find() 相反,不是 not()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12591889/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com