JQuery缩写多个父选择器

时间:2016-07-06 07:58:49

标签: javascript jquery

我很好奇,无法在网上找到任何东西,但我有一串代码,其目标是父母父母的父母。

最终看起来像这样:.parent().parent().parent().parent()

我想知道是否有任何方法可以减少这种情况,而不是4只我可以设置一个经常性的父亲x次。

更新

很多答案要求我使用选择器。我不是要针对特定​​的选择器。因此我为什么要使用多个父母。

我正在寻找缩写多个操纵器的方法。

4 个答案:

答案 0 :(得分:0)

尝试使用.eq():

(var_11,var_12,var_13

var_12,var_22,var_23

var_13,var_23,var_33) 

答案 1 :(得分:0)

parents()与您需要停止的选择器一起使用:

alert($('.e').parents('.b').attr('id'));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="a">
  <div class="b" id="thatsMe">
    <div class="c">
      <div class="d">
        <div class="e">
        </div>
      </div>
    </div>
  </div>
</div>

答案 2 :(得分:0)

您可以使用.parents(),将选择器作为可选参数。 这将遍历整个DOM,而不是仅仅上升一个级别。

在此处阅读更多内容:https://api.jquery.com/parents/#parents-selector

答案 3 :(得分:0)

如果您的父母有ID或类,您也可以使用.closest()

&#13;
&#13;
console.log($("p:eq(0)").parent().parent().parent().html());

console.log($("p:eq(0)").closest("#1").html());
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="1">
  <div id="2">
    <div id="3">
      <p>ME!</p>
    </div>
  </div>
</div>
&#13;
&#13;
&#13;