[英]jQuery find() including current node
我想使用jQuery的find()
方法選擇元素。 此方法搜索節點的子級,但不包括我也要考慮的節點本身。 在回答這個問題時,他們建議這樣做:
object.find('selector').addBack('selector')
對我來說,這似乎是一個不錯的解決方法,但不幸的是,此解決方案不適用於每個選擇器。 假設我有一些節點
<div class="someClass">
<div></div>
<div class="someClass">
<span></span>
</div>
</div>
並希望使用子選擇器'.someClass > *'
(或影響當前節點及其后代的類似選擇器)。 我期望得到2 div
元素和span
,但是很顯然,我只能得到span元素。
有人知道解決方法或其他方法嗎?
假設您不擔心拾取兄弟元素,則可以從開始的節點的父節點開始查詢。 這將確保所涉及的節點包含在查詢中。
const selector = '.someClass > *'; let $node = $('body > .someClass'); let $matches = $node.parent().find(selector); console.log($matches)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="someClass"> <div></div> <div class="someClass"> <span></span> </div> </div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.