是否可以通过jQuery中的索引号获取父元素?还是有其他办法吗?

时间:2015-10-26 05:43:55

标签: javascript jquery html css

HTML

<div class="topparent">
   <div class="secondparent">
       <div class="firstparent">
               <a href="#" class="link" >Menu Link</a>
       </div>
   </div>
</div>

这里我希望通过jQuery或JavaScript获取<div class="secondparent">。我的代码将在Anchor Tag上,我希望按索引号获得其第二大父元素。或者还有其他方法吗? 我不希望通过硬编码ID或CLASS获取元素。

2 个答案:

答案 0 :(得分:4)

您可以使用 parents() eq()

  1. 使用 parents() ,您可以获得所有祖先
  2. eq() 将有助于按索引选择
  3. <强> CODE:

    &#13;
    &#13;
    var p1=$('a.link').parents().eq(0);
    var p2=$('a.link').parents().eq(1);
    var p3=$('a.link').parents().eq(2);
    
    console.log(p1.attr('class'),p2.attr('class'),p3.attr('class'));
    &#13;
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <div class="topparent">
       <div class="secondparent">
           <div class="firstparent">
                   <a href="#" class="link" >Menu Link</a>
           </div>
       </div>
    </div>
    &#13;
    &#13;
    &#13;

答案 1 :(得分:0)

您好,现在您可以使用 parent()

var p1=$('a.link').parent();
var p2=$(p1).parent();
var p3=$(p2).parent();

console.log(p1.attr('class'),p2.attr('class'),p3.attr('class'));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="topparent">
   <div class="secondparent">
       <div class="firstparent">
               <a href="#" class="link" >Menu Link</a>
       </div>
   </div>
</div>