首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery -如果DIV类等于X,则用不同的类隐藏所有其他DIV

jQuery -如果DIV类等于X,则用不同的类隐藏所有其他DIV
EN

Stack Overflow用户
提问于 2012-10-25 06:11:14
回答 6查看 4.5K关注 0票数 1

我对jQuery很陌生,对JS相当陌生(一点知识),我想要创建一个jQuery代码。

首先,这里是我的HTML代码:

代码语言:javascript
复制
<div id="user-controls">
    <div class="choice" id="choice-all" onclick="showAll();">All</div>
    <div class="choice" id="choice-asus" onclick="justASUS();">ASUS</div>
    <div class="choice" id="choice-htc" onclick="justHTC();">HTC</div>
</div>

<div id="devices">
    <div class="android asus">Nexus 7</div>
    <div class="android htc">One S</div>
    <div class="android htc">One X+</div>
    <div class="android asus">Transformer Prime</div>
    <div class="winph htc">Windows Phone 8X</div>
</div>

我想要一个jQuery代码,它可以执行以下操作:

  1. 如果我单击#选项-asus,那么带有.htc类的所有DIV都将被设置为display="none“。
  2. 如果我点击#选项-htc,那么所有.asus类的DIV都将被设置为display="none“。
  3. 如果我单击#,那么所有DIV都将被设置为display=“内联块”(这也是页面第一次加载时的默认设置)。

我已经尝试过以下代码,但它什么也不做。

代码语言:javascript
复制
$(document).ready(function(){
    $("#choice-htc").click(function(){
        $(".htc").hide();
    })
});

谢谢你的帮助迪伦。

EN

回答 6

Stack Overflow用户

发布于 2012-10-25 06:40:28

如此多的选择:) http://jsfiddle.net/9RtUE/

代码语言:javascript
复制
    $(function(){
        $("#user-controls").on('click','div',function(){
           var classToShow = this.id.split('-')[1],
               filter = classToShow === "all" ? 'div': '.' + classToShow;
           $("#devices").children().show().not(filter).hide();
         }); 
     });
票数 2
EN

Stack Overflow用户

发布于 2012-10-25 06:15:58

尝试使用jquery

演示

代码语言:javascript
复制
$('#choice-all').click(function(){
  $('.htc, .asus').show();
});

$('#choice-asus').click(function(){
  $('.asus').show();
  $('.htc').hide();
});

$('#choice-htc').click(function(){
  $('.htc').show();
  $('.asus').hide();
});   
票数 1
EN

Stack Overflow用户

发布于 2012-10-25 06:21:20

这里的演示

代码语言:javascript
复制
$(document).ready(function(){   
    $(".choice").click(function(){
         $(".android,.winph").hide();
        if($(this).attr("id")=="choice-all"){
            $(".android,.winph").show();
        }else if($(this).attr("id")=="choice-asus"){
            $(".asus").show();
        }else if($(this).attr("id")=="choice-htc"){
            $(".htc").show();
        }
    });
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13062611

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档