同位素 - 通过关键字和搜索组合过滤器

时间:2014-05-17 22:52:51

标签: javascript jquery jquery-isotope

我尝试将搜索过滤器和带有Isotope的关键字过滤器组合在一起。 对于搜索过滤器,我的代码基于http://codepen.io/desandro/pen/wfaGu

您可以在http://fiddle.jshell.net/8DJ8V/

上查看我的代码

在我现在的这一点上,如果您从搜索开始然后使用过滤器,它就会起作用。但是,如果用户开始使用过滤器,然后尝试搜索,则搜索无法正常工作。 可能在我放置功能和/或尝试初始化Isotope两次的顺序出了问题 - 但我无法解决它。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

keyup函数再次调用函数 $ container.isotope(),当你点击某个按钮时,过滤器就会丢失。

因此,我对您的代码进行了一些更改:http://fiddle.jshell.net/lucaspedroza/7t8mgont/

在第32行,我添加了过滤功能:

$container.isotope({
    filter: function() {
      return qsRegex ? $(this).text().match( qsRegex ) : '.active';
    },
  });
}, 200 ) );

使用过滤器时清理输入,这样就不会混淆使用哪种过滤器。

我希望我能帮助你。

问候。