在嵌套手风琴中访问父手风琴

时间:2018-08-02 14:50:24

标签: javascript jquery accordion jquery-ui-accordion

<li>
  <a class="toggle" href="javascript:void(0);" id="plus">ABC</a>
  <ul class="inner">
    <li>
      <a href="#" class="toggle" id="plus">DEF</a>
      <div class="inner" id="mixedFaVT">
      </div>
    </li>
    <li>

      <a href="#" class="toggle" id="plus">GHI</a>
      <div class="inner" id="mixedFaVA">
      </div>
    </li>
  </ul>
</li>

ABC$this = DEF时,如何访问$this = GHI?问题在于,同一HTML页面中还有其他五套嵌套的手风琴。为了概括这个问题,当$this是DEF / GHI之类的任何“内部”按钮时,如何使用jQuery访问其特定的父级ABC?我已经尝试过.find().parents(),但是它们不起作用。

1 个答案:

答案 0 :(得分:0)

您可以使用$this方法遍历ul的父元素直到parents(),然后获取它的上一个元素,即a。 / p>

var $this = $('#plus-1');
var parent = $this.parents('ul').prev();

console.log('$this:', $this.text());
console.log('parent:', parent.text());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<li>
  <a class="toggle" href="javascript:void(0);" id="plus-0">ABC</a>
  <ul class="inner">
    <li>
      <a href="#" class="toggle" id="plus-1">DEF</a>
      <div class="inner" id="mixedFaVT">
      </div>
    </li>
    <li>

      <a href="#" class="toggle" id="plus-2">GHI</a>
      <div class="inner" id="mixedFaVA">
      </div>
    </li>
  </ul>
</li>