是否有一个jQuery函数结合了向上看的closest()
或parents()
和向下看的children()
函数?
例如:
<span id="container">
<div class="a 1"></div>
<div class="b 2"></div>
<div class="c 3">
<div class="d 4"></div>
<div class="b 5"></div>
</div>
<span>
$(".c").something(".b");
应返回“最近的”.b
元素,或.2
答案 0 :(得分:1)
我为此做了一些closestDesc
插件。
(function( $ ) {
$.fn.closestDesc = function(selector) {
var selection = [];
var query = function () {
this.children().each(function() {
if ($(this).is(selector)) {
selection.push(this);
}
else {
query.call(this);
}
});
};
query.call(this);
return this.pushStack(selection, "closestDesc", selector);
};
})(jQuery);
这会捕获与选择器匹配的所有最近的后代。