我有一个同位素图库,其中包含五个可用于对图库进行排序的单独过滤器。如果一个人要选择所有五个过滤器,则可能导致没有显示任何项目。
如果过滤器未返回结果,我想要显示隐藏的div。我试着没有运气就试着这样做。
如果同位素库过滤器具体到不显示任何同位素物品,如何显示隐藏的div?
答案 0 :(得分:4)
在问这个问题之后,我遇到了我的解决方案。它是this answer中this answer和this question的组合。
以下是我用来做我想要的代码:
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);
}
});