2013-09-25 48 views
0

我有一个同位素画廊,其中包含五个单独的过滤器,可以应用于整理画廊。如果一个人选择全部五个过滤器,则可能导致不显示任何项目。同位素过滤 - 没有结果

我想要做的是显示一个隐藏的div如果过滤器不返回结果。我已经考虑过试图做到这一点,没有任何运气。

如果显示一个隐藏的div,如果一个Isotope图库过滤器足够具体,不能显示任何同位素项目?

回答

4

问完这个问题后,我遇到了我的解决方案。它是在this question中找到的this answerthis answer的组合。

这里是我用来做什么我要寻找的代码:

var $container = $('#container') 
var selector = isoFilters.join(''); 
$container.isotope({ filter: selector }, function noResultsCheck() { 
var noItems = $('<div class="element no-results"> <!-- HTML for div to show "No Results" --> </div>'); 
var yesItems = $('.no-results'); 
var numItems = $('.element:not(.isotope-hidden)').length; 
    if (numItems == 0) { 
     $container.append(noItems).isotope('appended', noItems); 
    }else{ 
     $container.isotope('remove', yesItems); 
    } 
});