给定一个子元素,是否有一种简单的方法可以确定有多少父标记将它与给定的选择器分开?类似.closest(selector)
的内容,返回到达给定选择器所选元素所需的parent()
次调用次数。
我正在寻找的(未经测试的)实现:
$.fn.distance = function(selector) {
var $parent = $(selector); // TODO check that element exists
var $current = $(this);
var depth = 0;
while ($current != $parent) {
$current = $current.parent();
++depth;
}
return depth;
}
答案 0 :(得分:8)
$element.parentsUntil( "selector" ).length
答案 1 :(得分:4)
请参阅.parentsUntil()
方法。
var seperatingTags = $(something).parentsUntil('div').size();