首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JQuery同位素组合过滤器-预选

问JQuery同位素组合过滤器-预选
EN

Stack Overflow用户
提问于 2013-07-18 23:08:11
回答 1查看 464关注 0票数 2

我尝试实现一个同位素组合过滤器。三个筛选器中的一个应设置为一个选择,其他两个筛选器应根据这些筛选器显示所有项目。一切正常,只有一个例外:第一次单击时,预选“丢失”,并显示根据预选筛选器的所有项目。只有在单击预先选择的过滤器之后,一切才能正常工作。

因为我是一个初学者,我不知道怎么做。有什么办法解决这个问题吗?非常感谢!

代码语言:javascript
复制
<script>


$('#container').isotope({ filter: '.current' });

$(function(){

var $container = $('#container'), filters = {};

$container.isotope({
    itemSelector : '.prod'
});

// filter buttons
$('.filter a').click(function(){
  var $this = $(this);
  // don't proceed if already selected
  if ( $this.hasClass('selected') ) {
    return;
  }

  var $optionSet = $this.parents('.option-set');

  // change selected class
  $optionSet.find('.selected').removeClass('selected');
  $this.addClass('selected');

  // store filter value in object
  // i.e. filters.color = 'red'
  var group = $optionSet.attr('data-filter-group');
  filters[ group ] = $this.attr('data-filter-value');
  // convert object into array
  var isoFilters = [];
  for ( var prop in filters ) {
    isoFilters.push( filters[ prop ] )
  }
  var selector = isoFilters.join('');
  $container.isotope({ filter: selector });

  return false;
});

});

EN

回答 1

Stack Overflow用户

发布于 2019-08-04 16:29:23

我也有同样的问题。我找到的唯一解决方案是在页面加载后模拟点击特定选择的按钮。使用jQuery可以做到这一点。为有问题的按钮设置ID并调用:

代码语言:javascript
复制
$("#button_id").click();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17727249

复制
相关文章

相似问题

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