JQuery-无法使用同位素js-woocommerce产品进行筛选
JQuery - Unable to filter using isotope js woocommerce products
我已经编写了一个函数来使用同位素js过滤wooccommerce产品。我正在设法解决这个问题。但是过滤器不起作用。HTML看起来像
<div class = "filters">
<input type="checkbox" class = "do_this_filter" value=".Hand-Wash">Hand wash<br>
<input type="checkbox" class = "do_this_filter" value=".Machine-Wash">Machine wash<br>
</div>
<ul class ='products'>
<li class="items Hand-wash"></li>
<li class="items Machine-Wash"></li>
</ul>
我使用的jQuery是
$( function() {
// init Isotope
var $grid = $('.products').isotope({
itemSelector: '.item',
layoutMode: 'fitRows'
});
// bind filter click
$('.do_this_filter').on( 'click', function() {
var filterValue = $( this ).val();
// use filterFn if matches value
$grid.isotope({ filter: filterValue });
});
// change is-checked class
$('.do_this_filter').each( function( i, buttonGroup ) {
var $buttonGroup = $( buttonGroup );
$buttonGroup.on( 'click', function() {
$buttonGroup.find('.is-checked').removeClass('is-checked');
$( this ).addClass('is-checked');
});
});
});
这没用,有人能帮上忙吗。?提前谢谢
Jsfddle
这样尝试:
$(function() {
// init Isotope
var $grid = $('.products'),
$checkboxes = $('.filters input');
$grid.isotope({
itemSelector: '.items',
layoutMode: 'fitRows'
});
$checkboxes.change(function() {
var filters = [];
// get checked checkboxes values
$checkboxes.filter(':checked').each(function() {
filters.push(this.value);
});
filters = filters.join(', ');
$grid.isotope({
filter: filters
});
});
});
.items {
width: 100px;
height: 100px;
background: red;
margin: 3px;
list-style: none;
display: inline-block;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.isotope/2.2.2/isotope.pkgd.min.js"></script>
<div class="filters">
<input type="checkbox" class="do_this_filter" value=".Hand-wash">Hand wash
<br>
<input type="checkbox" class="do_this_filter" value=".Machine-Wash">Machine Wash
<br>
</div>
<ul class='products'>
<li class="items Hand-wash">Demo product1</li>
<li class="items Machine-Wash">Demo product2</li>
</ul>
相关文章:
- Angular JS Filter-通过3个复选框进行筛选
- 使用下划线.js筛选 JS 对象
- 流星.js按字段中的值筛选集合
- 骨干.js集合筛选前 10 个模型
- 无法使用Angular.js从列表中正确筛选数据
- 添加'错误'消息发送到同位素.JS搜索筛选器
- 使用jquery或JS从现有值集中筛选结果
- 将记录添加到交叉筛选器dosen't更新dc.js lineChart组
- 如何使用策略筛选Sails.js蓝图查询
- Ember.js:如何使用选择帮助程序上的观察者来筛选内容
- 如何通过在 Fabric JS 中传递颜色代码来创建自定义筛选器
- Angular.js 中字符串特定部分的自定义筛选器表达式
- 在子对象中显示筛选列表的挖空 js.访问要过滤的父对象列表
- 用于编写用于使用 node.js 上传图像的筛选器列表的设计模式
- 如何筛选主干.js集合和重新呈现应用视图
- 筛选请求管道节点.js
- Ember.JS - 无法筛选依据或基于计算属性进行筛选
- 在 URI 中存储 dc.js 筛选器并还原它们
- 如何筛选数据和填充 D3.js堆积条形图
- 筛选在 JS 中具有通用属性的项