Isotope를 필터링하려고하는데, 막혔습니다.체크 박스를 사용하여 동위 원소 필터링 문제가 있습니다.
목록의 확인란을 선택 취소하기 위해 목록에있는 모든 목록에있는 두 개의 목록 상자 필터와 모든 확인란의 선택을 취소하고 isotope ({filter : '*'})를 클릭하면됩니다.
내 문제는 정리 목록 단추를 클릭 할 때 표 목록 컨테이너를 동위 원소로 지정하는 방법을 알아낼 수 없다는 것입니다. 논리적으로 그리드 컨테이너는 특정 목록의 값없이 동위 원소가되어야합니다. 당신이 볼 수 있도록
function initIsotope(){
var $wrapper = $('.wrapper');
if($wrapper.length < 1){
return;
}
var $filters = $('.filters', $wrapper);
var $grid = $('.grid-container', $wrapper);
var $checkboxList = $ ('.checkbox-list', $wrapper);
var $checkboxes = $('.checkbox-control', $wrapper);
var $clearList = $('.clear-list', $wrapper);
var $clearAll= $('.clear-all', $wrapper);
//init Isotope
$grid.isotope({
itemSelector: '.grid-item',
layoutMode: 'fitRows'
});
//isotope filtering on checkbox click
// this part of code is from http://jsfiddle.net/desandro/DQydj/
$checkboxes.change(function(){
var filters = [];
// get checked checkboxes values
$checkboxes.filter(':checked').each(function(){
filters.push(this.value);
});
filters = filters.join(', ');
$grid.isotope({ filter: filters });
});
//clear list
$clearList.on('click', function(e){
e.preventDefault();
var $self = $(this);
$self.closest($checkboxList).find($checkboxes).prop("checked", false);
//Im stuck here
});
//clear-all lists
$clearAll.on('click',function(e){
e.preventDefault();
$checkboxes.prop("checked", false);
$grid.isotope({ filter: '*' });
});
}
$(function(){
initIsotope();
});
이 jsfiddle 예를 가지고 여기
내 JS 코드 입니다 : 모든 목록이 명확한 목록 버튼을 명확 때 그리고 그리드 ({ '*'필터를}) 동위 원소한다 : https://jsfiddle.net/timosergio/at7gtc1g/35/나를 도와 줄 수 있습니까?
추신 : 내 jsFiddle을 업데이트했습니다. 그러나 나는 더 가깝지만 욕망의 결과에 도달했습니다. 확인해보십시오
정말 고마워요! 그게 내가 정말로 필요로하는거야! 나는 그 논리를 이해했다. 체크 된 나머지 체크 박스의 값으로 그리드를 동위 원소로 동조시켜야했습니다. 내가 맞습니까? – Sergiti
정확하게 ...;) 각 체크 상자에서 수행하는 것처럼 클릭하십시오! 이것이 바로 동일한 "하위 기능"입니다. –
감사합니다. @Louys – Sergiti