Так что, глядя на документацию изотоп , есть функция, которую вы можете использовать для получения количества фильтруемых элементов после выполнения фильтрации.
getFilteredItemElements
Возвращает массив отфильтрованных элементов элемента в текущем отсортированном порядке.
( источник )
Похоже, что вы могли бы сделать что-то подобное после кода, который у вас есть выше.
var resultsCount = $grid.isotope('getFilteredItemElements').length;
if (resultsCount < 1) {
$('#error').show();
} else {
$('#error').hide();
}
Я бы поместил это в вашу функцию runFilter
, чтобы всегда обновляется после обновления фильтра.