2014-04-01 4 views
0

저는 http://masonry.desandro.com/methods.html#layout과 같은 레이아웃을 사용하고 있으며 한 번에 하나의 항목 만 활성화하는 방법이 있는지 궁금해하고 있습니다. 따라서 새 항목을 확장하면 현재 열려있는 항목이 원래 양식으로 돌아갑니다 (class = "is_expanded"가 제거됨). 프로그래밍에 아주 새로운 I've 정말보고에 시작할 위치를 알고하지는 마법을 수행하는 부분 즉 How do I remove class from previous selection when clicking additional item?를 구성하지만 행운벽돌을 새 항목을 클릭하면 "is_expanded"클래스를 제거하십시오

답변

0
classie.toggle(event.target, 'gigante'); 

으로 시도 - 그것은 클래스 'gigante의'를 추가하는 다음 수는 4 * 4 (또는 무엇이든)

하나만을 확인하려면

내가 않는 추가 라인이 항목에서 모든 'gigante의'클래스를 제거 무엇 다음 시간

eventie.bind(container, 'click', function(event) { 
// don't proceed if item was not clicked on 
if (!classie.has(event.target, 'item')) { 
return; 
} 

// change size of item via class 
$('.item').removeClass('gigante'); // add this line 
classie.toggle(event.target, 'gigante'); 
// trigger layout 
msnry.layout(); 
}); 

에서 확장 그런 다음 해당 클래스를 항목에 다시 추가합니다.

$('.item')은 모든 항목에있는 클래스입니다.

이 답변은 확장 된 항목 만 'gigante'라고 가정합니다.

+0

감사합니다. 매력처럼 작동했으며 앞으로 필요할 때 비슷한 기능을 추가하는 방법을 알고 있습니다. – Karl

+0

$ (함수() { VAR을 $ 용기 = $ ('. 벽돌') 벽돌 ({ columnWidth의 130, 거터 5 }) $의 container.on (','클릭 '.. (this is) .parent ('. item'). toggleClass ('is-expanded');}}}}}}}}}}}}}}}}}}}}}} -expanded '); $ container.masonry (}); – Karl