是否有內置的jQuery方法,允許找到最接近另一個元素的DOM元素?按最近我的意思 - 最小長度的相對路徑(例如XPath)從一個到另一個。jquery最近的元素DOM中的某處(模糊搜索)
請考慮以下示例(來自Twitter Bootstrap的投遞箱)。有下拉圖標 - 元素.JS-ACTIONS
和一組鏈接 - 元素.JS-DELETE
,當其中一個鏈接點擊下拉圖標上的進度條應啓用。
<div class='btn-group'>
<a href='#' class='btn dropdown-toggle JS-ACTIONS' data-toggle='dropdown'>
<i class='icon-cog'></i>
<span class="caret"></span>
</a>
<ul class='dropdown-menu pull-right'>
<li><a href='#' class='JS-DELETE'>Delete</a></li>
</ul>
</div>
一種方式做到這一點,使用類似
$(element.currentTarget).parent().parent().find('.JS-ACTIONS').showProgress()
但我想的JavaScript從DOM結構independet,像
$(element.currentTarget).nearest('.JS-ACTIONS').showProgress()
是有jQuery中的這種方法嗎?
UPDATE
的jQuery closest
方法都沒有工作,它搜索在父母而已,它不會在兄弟姐妹和父母的其他孩子的搜索。
說真的,你猜對了'.nearest()',但是不能在Google上找到'.closest()'? – adeneo
'.closest'只在這裏與名稱有關,jQuery喜歡保持名稱短,所以它不被稱爲'.closestItselfOrAnyParent',這是'最接近'實際上並且與OP的問題本身沒有關係 – Esailija