在单击时使jQuery项目过滤器选项卡活跃



我遇到了我用于项目的投资组合过滤器。但是我似乎很难在单击时使标签处于活动状态。我真的可以在这里使用一些帮助。谢谢。

$(function() {
      var selectedClass = "";
      $(".fil-cat").click(function(){ 
      selectedClass = $(this).attr("data-rel"); 
   $("#portfolio").fadeTo(100, 0.1);
      $("#portfolio   div").not("."+selectedClass).fadeOut().removeClass('scale-anm');
  setTimeout(function() {
    $("."+selectedClass).fadeIn().addClass('scale-anm');
    $("#portfolio").fadeTo(300, 1);
  }, 300); 
  });
});

单击时,我需要每个选项卡都具有背景颜色。默认情况下," ALL "应该具有背景颜色来显示活动的sate。

这是一个小提琴链接:https://jsfiddle.net/q7ajf19e

为什么不仅包括 selected 类之类的类型?

$(function() {
    var selectedClass = "";
    $(".fil-cat").click(function(){
        $(".fil-cat").removeClass("selected");
        $(this).addClass("selected");
        selectedClass = $(this).attr("data-rel"); 
        $("#portfolio").fadeTo(100, 0.1);
        $("#portfolio div").not("."+selectedClass).fadeOut().removeClass('scale-anm');
        setTimeout(function() {
            $("."+selectedClass).fadeIn().addClass('scale-anm');
            $("#portfolio").fadeTo(300, 1);
        }, 300); 
    });
});
body{
  max-width: 900px;
  float: none;
  margin: auto; 
}
#portfolio {  
    margin: 1rem 0;
    -webkit-column-count: 3; 
    -moz-column-count: 3;
    column-count: 3;
    -webkit-column-gap: 1rem;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
    -webkit-column-width: 33.33333333333333%;
    -moz-column-width: 33.33333333333333%;
    column-width: 33.33333333333333%;
}
.tile { 
    -webkit-transform: scale(0);
    transform: scale(0);
    -webkit-transition: all 350ms ease;
    transition: all 350ms ease;
}
.tile:hover { 
}
.scale-anm {
  transform: scale(1);
}
p{ 
  padding:10px; 
  border-bottom: 1px #ccc dotted; 
  text-decoration: none; 
  font-family: lato; 
  text-transform:uppercase; 
  font-size: 12px; 
  color: #333; 
  display:block; 
  float:left;
}
p:hover { 
  cursor:pointer; 
  background: #333; 
  color:#eee; }
.tile img {
    max-width: 100%;
    width: 100%;
    height: auto;
    margin-bottom: 1rem;
  
}
.btn {
    font-family: Lato;
    font-size: 1rem;
    font-weight: normal;
    text-decoration: none;
    cursor: pointer;
    display: inline-block;
    line-height: normal;
    padding: .5rem 1rem;
    margin: 0;
    height: auto;
    border: 1px solid;
    vertical-align: middle;
    -webkit-appearance: none;
    color: #555;
    background-color: rgba(0, 0, 0, 0);
}
.btn.selected {
    background-color: #999;
}
.btn:hover {
  text-decoration: none;
}
.btn:focus {
  outline: none;
  border-color: var(--darken-2);
  box-shadow: 0 0 0 3px var(--darken-3);
}
::-moz-focus-inner {
  border: 0;
  padding: 0;
}
<div class="toolbar mb2 mt2">
    <button class="btn fil-cat selected" href="" data-rel="all">All</button>
    <button class="btn fil-cat" data-rel="web">Websites</button>
    <button class="btn fil-cat" data-rel="flyers">Flyers</button>
    <button class="btn fil-cat" data-rel="bcards">Business Cards</button>
</div> 
 
<div style="clear:both;"></div>   
<div id="portfolio">
    <div class="tile scale-anm web all">
        <img src="http://demo.themerain.com/charm/wp-content/uploads/2015/04/2-mon_1092-300x234.jpg" alt="" />
    </div>
    <div class="tile scale-anm bcards all">
        <img src="http://demo.themerain.com/charm/wp-content/uploads/2015/04/jti-icons_08-300x172.jpg" alt="" />
    </div>
    <div class="tile scale-anm web all">
        <img src="http://demo.themerain.com/charm/wp-content/uploads/2015/04/emi_haze-300x201.jpg" alt="" />
    </div>
    <div class="tile scale-anm web all">
        <img src="http://demo.themerain.com/charm/wp-content/uploads/2015/04/codystretch-300x270.jpg" alt="" />
    </div>
    <div class="tile scale-anm flyers all">
        <img src="https://placeholdit.imgix.net/~text?txtsize=33&txt=350%C3%97190&w=350&h=190" alt="" />
    </div>
    <div class="tile scale-anm bcards all">
        <img src="https://placeholdit.imgix.net/~text?txtsize=19&txt=200%C3%97290&w=200&h=290" alt="" />
    </div>
    <div class="tile scale-anm flyers all">
        <img src="http://demo.themerain.com/charm/wp-content/uploads/2015/04/jti-icons_08-300x172.jpg" alt="" />
    </div>
    <div class="tile scale-anm flyers all">
        <img src="http://demo.themerain.com/charm/wp-content/uploads/2015/04/transmission_01-300x300.jpg" alt="" />
    </div>
    <div class="tile scale-anm web all">
        <img src="https://placeholdit.imgix.net/~text?txtsize=19&txt=200%C3%97290&w=200&h=290" alt="" />
    </div>
    <div class="tile scale-anm flyers all">
        <img src="https://placeholdit.imgix.net/~text?txtsize=19&txt=200%C3%97290&w=200&h=290" alt="" /> 
    </div>
    <div class="tile scale-anm web all">
        <img src="http://demo.themerain.com/charm/wp-content/uploads/2015/04/the-ninetys-brand_02-300x300.jpg" alt="" />
    </div>
    <div class="tile scale-anm bcards all">
        <img src="http://demo.themerain.com/charm/wp-content/uploads/2015/04/15-dia_1092-1-300x300.jpg" alt="" />
    </div>
    <div class="tile scale-anm web all">
        <img src="https://placeholdit.imgix.net/~text?txtsize=33&txt=350%C3%97190&w=350&h=190" alt="" /> 
    </div>
    <div class="tile scale-anm bcards all">
        <img src="http://demo.themerain.com/charm/wp-content/uploads/2015/04/emi_haze-300x201.jpg" alt="" />  
    </div>
    <div class="tile scale-anm web all">
        <img src="http://demo.themerain.com/charm/wp-content/uploads/2015/04/transmission_01-300x300.jpg" alt="" />
    </div> 
    <div class="tile scale-anm web all">
        <img src="https://placeholdit.imgix.net/~text?txtsize=33&txt=350%C3%97190&w=350&h=190" alt="" />  
    </div> 
    <div class="tile scale-anm bcards all">     
        <img src="https://placeholdit.imgix.net/~text?txtsize=19&txt=200%C3%97290&w=200&h=290" alt="" />
    </div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>

最新更新