繁体   English   中英

在javascript中隐藏和显示li active标签

[英]Hide and show li active tags in javascript

<div id="product">
<ul id="shop">
<li> Vision </li>
<li class="active">Type</li>
<li> Energy</li>
</ul>
</div>

我只想显示活动的li标签,而其他li标签将被隐藏。

排除的输出将是

类型

我尝试使用javascript

$( document ).ready(function() { 
          $('#shop li.active').show();
            });

但是什么也不会发生。

我只想显示活动的li标签,而其他li标签将被隐藏。

隐藏兄弟姐妹

 $('#shop li.active').show().siblings().hide();

演示版

 $(document).ready(function() { $('#shop li.active').show().siblings().hide(); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div id="product"> <ul id="shop"> <li> Vision </li> <li class="active">Type</li> <li> Energy</li> </ul> </div> 

但是什么也不会发生。

由于没有逻辑可隐藏li ,因此仅显示它们。 如上所示,您需要显示activeactive并隐藏其余active

您必须添加一点CSS,默认情况下会隐藏li标签

ul li{
  display:none
}

https://jsfiddle.net/jzj6o5ms/1/

使用jQuery,您需要隐藏哪些无效的

$(document).ready(function() {
  $('#shop li:not(.active)').hide();
  $('#shop li.active').show();
});

也可以使用CSS来完成

#shop li:not(.active){
  display: none;
}

您可以使用.nothide

 $(document).ready(function() { $('li').not('.active').hide(); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div id="product"> <ul id="shop"> <li> Vision </li> <li class="active">Type</li> <li> Energy</li> </ul> </div> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM