여러분 중 좋은 사람이 이것에 눈을 찌를 수 있고 내 방식의 오류를 알려주면, 그것은 fab이 될 것입니다, 건배!체크 박스 상태에 따른 동위 원소 필터
나는 항목을 필터링하기 위해 동위 원소를 사용하고 있습니다. 각 항목에는 사용자가 '즐겨 찾기'할 수있는 옵션이 있습니다.
성공적으로 확인란을 전환하고 현재 상태를 localStorage에 저장할 수 있지만 내가 할 수있게하려면 필터 버튼 중 하나를 사용하여 (동위 원소를 통해) 'favourited' '.
다음은 '즐겨 찾기'를 제외한 모든 필터 버튼입니다.
여기
<div id="filters" class="button-group">
<button class="button uppercase is-checked" data-filter="*">All</button>
<button class="button uppercase" data-filter=".amber">AMBER</button>
<button class="button uppercase" data-filter=".dark">DARK</button>
<button class="button uppercase" data-filter=".golden">GOLDEN</button>
<button class="button uppercase" data-filter=".ruby">RUBY</button>
<button class="button uppercase" id="checkbox" data-filter=".checkbox">FAVOURITES</button>
</div>
그리고 HTML
내가 작품을 만들기 위해 노력하고있어 스크립트입니다.JS
function customCheckbox(){
var checkBox = $('.checkbox');
//on load select if necessary
checkBox.each(function(){
var id=$(this).data('id');
if(localStorage.getItem(id)==1){
$(this).addClass("selected");
}
});
//on click toggle selected and save in localstorage
checkBox.click(function(){
var id=$(this).data('id');
$(this).toggleClass("selected");
if($(this).hasClass("selected")){
localStorage.setItem(id,1);
}else{
localStorage.removeItem(id);
}
});
}
$(document).ready(function(){
//start checkboxes here
customCheckbox();
//filter button
var $grid = $('#grid');
$grid.isotope({
itemSelector: '.element-item',
layoutMode: 'fitRows',
transitionDuration: '0.6s'
});
$('#filters').on('click', 'button', function() {
$('.checkbox:not(.selected)').parent().show();
$grid.isotope(); //show all not starred blocks
});
$('#checkbox').on('click', 'button', function(){
$('.checkbox:not(.selected)').parent().hide();
$grid.isotope(); //hide all not starred blocks
});
사람이 내가 잘못 갈거야 위치에 어떤 빛을 흘릴 수 있다면, 그것은 상당히 이해할 수있을 것입니다! 어떤 도움이나 조언을 주신 것에 대해 미리 감사드립니다.
업데이트 : 이제 jsfiddle을 만들었습니다. 나는 jsfiddle을 처음 사용한다. 내가 잘못했을 경우 소리 지르지. 나는 바이올린에서 제대로 작동하려면 좋아하는 체크 박스의 상태를 전환 로컬 스토리지 (이전 성공)을 얻을 수없는 것 몇 가지 이유를 들어
https://jsfiddle.net/Frannie/rtkpws48/55/
. 내가 어디로 빠졌는지 모르겠다 ???
어쨌든 누구나 작동하는 방법에 대한 단서가 있다면, 그것은 훌륭합니다!
완전히 HTML을 게시하시기 바랍니다 수 (클래스 이름 체크 박스) 또는 jsfiddle 또는 codepen에서 –
할거야, 타밀어 ... 2 초 ... –
오케이, 오랜 시간 미안해. 회신 지연. 전에 jsfiddle을 사용하지 않았습니다. 그래서 그것을 설정하는 데 약간의 시간이 걸렸습니다. https://jsfiddle.net/Frannie/rtkpws48/55/ 난 아무것도 제출하지 않은 경우 올바르게, 내가 다시 :) 을 알려 주시기 바랍니다 않는 도움에 미리 감사합니다! –