1

我刚刚尝试了 Filtrify jquery 脚本 - http://luis-almeida.github.io/filtrify/

但是我有一个小问题很遗憾我无法解决。

我想从过滤器菜单中隐藏空/不相关的标签

例如,在这个演示中 - http://luis-almeida.github.io/filtrify/movies.html如果我从“主要演员”过滤器中选择“Aaron Eckheart”,就会出现一部电影。

接下来,如果我打开“类型”过滤器,很多类型“冒险、动画、传记”此时与“Aaron Eckheart”无关。而且我认为隐藏它们会很棒,但我不知道该怎么做。

我在想如果标签计数为 0,我应该使用。.addClass("ft-hidden")我在查看 jquery 代码后尝试了一些简单的实验,但目前我只是不知道:(

你能建议如何做到这一点吗?

4

1 回答 1

1

不熟悉这个库,但纯粹是通过控制台进行黑客攻击,你可能会在某个地方刺伤它,很可能是在它的callback(参见http://luis-almeida.github.io/filtrify/query.html

$('.ft-label').parent()
    .find('li[data-count=0]').hide().end()
    .find(':not(li[data-count=0])').show().end();

作为一个简单的测试,请访问您提到的链接(http://luis-almeida.github.io/filtrify/movies.html),在浏览器控制台中运行以下代码对原始演示代码进行打孔,看看是否结果就是你想要的

$(function() {
    $.filtrify("container", "placeHolder", {
        callback: function ( query, match, mismatch ) {
            $('.ft-label').parent()
                .find('li[data-count=0]').hide().end()
                .find(':not(li[data-count=0])').show().end();
        }
    });
});
于 2013-04-22T18:45:51.300 回答