2016-10-16 3 views
0

Я использую изотоп, предоставленный metafizzy на div с различными фильтрами, и он очень хорошо работает для меня вот так. Но когда я потом добавлю ребенка div на этот div с идентификатором communitymembers, изотопный фильтр не работает для этого ребенка.Изотопный фильтр не работает над дочерним элементом, добавленным позже в основной элемент селектора

  $container = $('#communitymembers').isotope({ 
       itemSelector: '.item-select', 
       filter: function() { 
        var $this = $(this); 
        var searchResult = commMemberKeywordSearchFilter ? $this.find('.memberName').text().match(commMemberKeywordSearchFilter) : true; 
        var expertiseResult = $this.is(commMemberExpertiseFilter); 
        var distanceResult = commMemberDistanceFilter ? $this.find('.communityLocation').attr("data-com-loc") < parseInt(commMemberDistanceFilter) : true; 
        return searchResult && distanceResult && (expertiseResult || commMemberExpertiseFilter==''); 
       } 
      }); 
       $('.filtercheck').change(function() { 
       var inclusives = []; 

       $('.filtercheck').each(function(i, elem) { 
        if (elem.checked) { 
         inclusives.push(elem.value);             
        }      
       }); 
       commMemberExpertiseFilter = inclusives.join(', '); 
       $container.isotope();    
      }); 
      $('#distance-filter-community-member-list').on("change", function() { 
       commMemberDistanceFilter = this.value; 
       $container.isotope();    
      }); 

      $("#communityMemberListSearch").keyup(debounce(function(){       
       commMemberKeywordSearchFilter = new RegExp($("#communityMemberListSearch").val(), 'gi'); 
       $container.isotope(); 
      } , 200)); 

Событие, хотя после добавления Я назвал изотоп, но он не работает.

$("#communitymembers").append(memberslist); 
$container.isotope(); 

Пожалуйста, помогите !!!

ответ

0

Фикс с этим,

$container.append(template).isotope('appended', template).isotope('layout'); 

Это должно работает

Смежные вопросы