-2


1

子要素が親内にどれだけ深くネストされているかを判断するにはどうすればよいですか?

子要素が与えられた場合、指定されたセレクタからそれを分離する親タグの数を決定する簡単な手段はありますか? `.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;
}

2 Answer


8


$element.parentsUntil( "selector" ).length


4


http://api.jquery.com/parentsUntil/ [.parentsUntil()]メソッドを参照してください。

var seperatingTags = $(something).parentsUntil('div').size();