缩略图组合过滤器的行为不正确

时间:2017-09-01 07:23:47

标签: javascript php html css wordpress

我正在尝试使用过滤器制作缩略图以在我的网站上运行。我一直在使用这个at codepen作为灵感。它在codepen中没有任何问题,但是一旦我将代码插入我的wordpress网站(使用divi。主题),过滤就完全没有了。

在下面的代码中,我将样式从 #port 更改为 #portiz ,将 .btn 更改为 .butn 。我做了这个更改,因为我注意到它覆盖了现有的样式,我还想测试这是否是问题。我也在JS和HTML中做了相同的更改。

我无法弄清楚要改变的地方或内容,或者添加。

最佳, 射线



<script>
$(function() {
		var selectedClass = "";
		$(".fil-cat").click(function(){ 
		selectedClass = $(this).attr("data-rel"); 
     $("#portiz").fadeTo(100, 0.1);
		$("#portiz div").not("."+selectedClass).fadeOut().removeClass('scale-anm');
    setTimeout(function() {
      $("."+selectedClass).fadeIn().addClass('scale-anm');
      $("#portiz").fadeTo(300, 1);
    }, 300); 
		
	});
});
</script>
&#13;
#portiz{  
    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);
}

.tile img {
    max-width: 100%;
    width: 100%;
    height: auto;
    margin-bottom: 1rem;
  
}

.butn {
    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);
}

.butn:hover {
  text-decoration: none;
}

.butn:focus {
  outline: none;
  border-color: var(--darken-2);
  box-shadow: 0 0 0 3px var(--darken-3);
}

::-moz-focus-inner {
  border: 0;
  padding: 0;
}
&#13;
<div class="toolbar mb2 mt2">
  <button class="butn fil-cat" href="" data-rel="all">All</button>
  <button class="butn fil-cat" data-rel="web">Websites</button>
  <button class="butn fil-cat" data-rel="flyers">Flyers</button>
  <button class="butn fil-cat" data-rel="bcards">Business Cards</button>
</div> 
 
<div style="clear:both;"></div>   
<div id="portiz">
  <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>
<div style="clear:both;"></div>   
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

你的JS有点混乱,但它有效。你的SO片段中只有几个错误:

  1. 您不应在JS编辑器中包含<script></script>标签
  2. 您忘记包含jQuery,因此在您的示例中$未定义。
  3. 除此之外,它还有效:

    $(function() {
    		var selectedClass = "";
    		$(".fil-cat").click(function(){ 
    		selectedClass = $(this).attr("data-rel"); 
         $("#portiz").fadeTo(100, 0.1);
    		$("#portiz div").not("."+selectedClass).fadeOut().removeClass('scale-anm');
        setTimeout(function() {
          $("."+selectedClass).fadeIn().addClass('scale-anm');
          $("#portiz").fadeTo(300, 1);
        }, 300); 
    		
    	});
    });
    #portiz{  
        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);
    }
    
    .tile img {
        max-width: 100%;
        width: 100%;
        height: auto;
        margin-bottom: 1rem;
      
    }
    
    .butn {
        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);
    }
    
    .butn:hover {
      text-decoration: none;
    }
    
    .butn:focus {
      outline: none;
      border-color: var(--darken-2);
      box-shadow: 0 0 0 3px var(--darken-3);
    }
    
    ::-moz-focus-inner {
      border: 0;
      padding: 0;
    }
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <div class="toolbar mb2 mt2">
      <button class="butn fil-cat" href="" data-rel="all">All</button>
      <button class="butn fil-cat" data-rel="web">Websites</button>
      <button class="butn fil-cat" data-rel="flyers">Flyers</button>
      <button class="butn fil-cat" data-rel="bcards">Business Cards</button>
    </div> 
     
    <div style="clear:both;"></div>   
    <div id="portiz">
      <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>
    <div style="clear:both;"></div>