隐藏所有div除了第一个div之外还有class hidecategory

时间:2014-02-21 12:20:20

标签: jquery

我想隐藏所有div除了第一个div

之外还有类hidecategory

我使用过jQuery代码

$(".hidecategory").hide();
$('.hidecategory:first').show();

但是我需要相同的功能,如果我点击h1标签显示父类并隐藏其他div有类hidecategory

Html代码

<h1 class="maincategory">Accounting & Financial</h1>
<div class="category-section addspanwarp hidecategory" style="display: block;"></div>
<h1 class="maincategory">Business Consultants</h1>
<div class="category-section addspanwarp hidecategory" style="display: none;"></div>
<h1 class="maincategory">Business Consultants</h1>
<div class="category-section addspanwarp hidecategory" style="display: none;"></div>
<h1 class="maincategory">Business Consultants</h1>
<div class="category-section addspanwarp hidecategory" style="display: none;"></div>

5 个答案:

答案 0 :(得分:2)

纠正你的HTML。使用ul-li

<ul>
    <li class="maincategory">Accounting & Financial</li>
    <li class="category-section addspanwarp hidecategory">Accounting & Financial Content</li>
    <li class="maincategory">Business Consultants</li>
    <li class="category-section addspanwarp hidecategory">Business Consultants Content</li>
    <li class="maincategory">Consultants</li>
    <li class="category-section addspanwarp hidecategory">Content</li>
</ul>

你可以试试这个

$('.hidecategory:not(:first)').hide();
$('.maincategory').click(function () {
    $(".hidecategory").hide();
    $(this).next('.hidecategory').show();
});

Fiddle DEMO

答案 1 :(得分:1)

尝试

$('.maincategory').click(function(){
    $(".hidecategory").hide();
    $(this).next('.hidecategory').show();
});

请参阅此FIDDLE

答案 2 :(得分:1)

应该做的伎俩

$('h1').click(function(){
    $(".hidecategory").hide();
    $(this).next('.hidecategory').show();
});

jsfiddle

答案 3 :(得分:0)

我相信$(".hidecategory").not(':first')会选择您需要的元素。

答案 4 :(得分:0)

试试这个

$(".hidecategory").find(":gt(0)").css('display','none');