jQuery를 통해 페이지의 숨겨진 부분을 열고 닫는 사이드 바 메뉴가 있습니다. 이 링크는 숨겨진 내용을 사라지게하고 클래스를 링크에 추가하거나 제거합니다. 그래서 예제 HTML/CSS를이전에 토글 된 모든 요소 숨기기
<ul>
<li><a class="linkOne" href="#">Link One</a></li>
<li><a class="linkTwo" href="#">Link Two</a></li>
</ul>
<div class="linkOneBox">Stuff</div>
<div class="linkTwoBox">Stuff</div>
<style type="text/css">
.linkOneBox,.linkTwoBox {display:none}
.current {background: #fff}
</style>
와 jQuery를 뭔가 같은 ..에 대한 어쨌든
$('.linkOne').click(function() {
$('.linkOneBox').fadeToggle();
$(this).toggleClass('current');
return false;
});
.. 내 질문에 내가 토글을 사용하고 있기 때문에, 모두가 할 수있는 가장 좋은 방법은 무엇이며, 열려있는 나머지 토글은 꺼진 상태로 재설정됩니까? 새 링크를 클릭하면 이전에 열린 창을 모두 숨기고 .current를 제거하는 방법은 어떻게됩니까? 그런 다음
<ul id="menu">
<li><a href="#b1">Link One</a></li>
<li><a href="#b2">Link Two</a></li>
</ul>
<div class="box" id="b2">Stuff</div>
<div class="box" id="b1">Stuff</div>
:
예! 정말 고마워. 내가 가고 있었던 길보다 훨씬 효율적이다. 겹치는 부분에 대한 의견에 대해서는 ... $ ('. box'). 숨기기(); 초기 깜박 거림을 막기 위해 스크립트가로드되는 동안 CSS가 보이지 않도록 숨기고 싶습니다. 그런 다음 js가있는 사람들을 위해 뭔가 다른 것을 갖게 될 것입니다. – Zac
각 링크가 항상 켜지면서 토글을 잃어 버렸습니다. 각 윈도우의 닫기 버튼을 추가했지만 토글 기능을 유지하는 방법에 대한 아이디어가 있으면 듣고 싶습니다. :) – Zac
예, 모두 했어요. * 처음에는 상자를 숨기는 것이 었습니다 - $ ('box : visible')를 변경하면 fadeToggle(); ~ $ ('box : visible'). hide() 그러면 더 좋을 것 같습니다. 또한 처음 $ ('. box'). hide()를 .box div 바로 뒤에있는 cript 블록으로 옮기면 깜박임을 피하고 비 JS 사용자를 위해 열어 두어야합니다. –