div标签没有使用jquery折叠/扩展

时间:2017-04-21 07:50:49

标签: javascript jquery html

我在下面的html中,包含类tabHeader的div根本没有展开/折叠。

<div class="tabHeader">
     <li><a href="#" id='onejltab' class="tablinks">1JL(Mobile)</a></li>
      <div class="insideTabHeader">
          <li><a href="/onejl/1" class="tablinks" style="text-align:center">Network</a></li>
          <li><a href="/onejl/2" class="tablinks" style="text-align:center">Application</a></li>
          <li><a href="/onejl/3" class="tablinks" style="text-align:center">Integration</a></li>
          <li><a href="/onejl/4" class="tablinks" style="text-align:center">Infrastructure</a></li>
      </div>
</div>

已写下以下jquery来展开/展开div tabHeader

$("#tabHeader").click(function () {

    $tabHeader = $(this);
    $insideTabHeader = $tabHeader.next();
    $insideTabHeader.slideToggle(500, function () {
    });

});

我不确定为什么上面的jquery不起作用。任何帮助/解决方案都会有很大的帮助。

提前致谢。

1 个答案:

答案 0 :(得分:1)

1-使用锚点ID或类而不是div

2-使用$tabHeader.closest('li').next();代替$tabHeader.next();

$("#onejltab").click(function () {

    $tabHeader = $(this);
    $insideTabHeader = $tabHeader.closest('li').next();
    $insideTabHeader.slideToggle(500, function () {
    });

});

<强> 演示

&#13;
&#13;
$("#onejltab").click(function () { 
    $tabHeader = $(this);
    $insideTabHeader = $tabHeader.closest('li').next();
    $insideTabHeader.slideToggle(500, function () {
    });
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="tabHeader">
     <li><a href="#" id='onejltab' class="tablinks">1JL(Mobile)</a></li>
      <div class="insideTabHeader">
          <li><a href="/onejl/1" class="tablinks" style="text-align:center">Network</a></li>
          <li><a href="/onejl/2" class="tablinks" style="text-align:center">Application</a></li>
          <li><a href="/onejl/3" class="tablinks" style="text-align:center">Integration</a></li>
          <li><a href="/onejl/4" class="tablinks" style="text-align:center">Infrastructure</a></li>
      </div>
</div>
&#13;
&#13;
&#13;