closest()方法返回所選元素的第一個祖先。
closest()方法從當前元素一直向上遍歷,一直到文檔的根元素(<html>),以找到DOM元素的第一個祖先。
closest()和parents()方法是相似的,因為它們都遍歷DOM樹。區(qū)別如下:
closest()
從當前元素開始
向上移動DOM樹,直到找到與提供的選擇器匹配的對象
返回的jQuery對象按文檔順序為原始集中的每個元素包含零個或一個元素
parents()
從父元素開始
在DOM樹中瀏覽到文檔的根元素,將每個祖先元素添加到一個臨時集合中;然后,如果有選擇器,則根據(jù)選擇器過濾該集合
返回的jQuery對象包含原始集合中每個元素的零個或多個元素(以相反的文檔順序)
返回所選元素的第一個祖先:
$(selector).closest(selectorExpression)
使用DOM上下文返回第一個祖先,以在其中查找DOM樹:
$(selector).closest(selectorExpression, context)
返回<span>的第一個祖先,即<div>元素:
p(直接父級) span
參數(shù) | 描述 |
---|---|
selectorExpression | 指定選擇器表達式,元素或jQuery對象以匹配元素 |
context | (可選)可以在其中找到匹配元素的DOM元素 |