当一个人打开时关闭其他人

时间:2012-12-13 20:46:04

标签: jquery class click

我有这段代码:

JS:

    $(document).ready(function(){
       $('nav ul li').click(function () {
          $('aside.' + this.className).toggleClass('opened');
       });
    });

HTML:

<nav>
 <ul>
    <li class="index">Home</li>
    <li class="index2">some text</li>
</ul>
  </nav>

  <aside class="index">
    <div class="picture"></div>
    <h2>Lorem Ipsum</h2>
    <p>Lorem ipsum dolor sit amet</p>
  </aside>

  <aside class="index2">
    <div class="picture"></div>
    <h2>Lorem Ipsum 2</h2>
    <p>Lorem ipsum dolor sit amet 2</p>
  </aside>

现在我希望当我打开一个旁边所有其他人都要关闭???

3 个答案:

答案 0 :(得分:1)

$('aside').not('.' + this.className).removeClass('opened');
$('aside.' + this.className).toggleClass('opened');

答案 1 :(得分:0)

$(document).ready(function(){
   $('nav ul li').click(function () {
      $('aside').removeClass('opened');
      //just do the 1st one at index `0`
      $('aside.' + this.className).eq(0).toggleClass('opened'); 
   });
});

答案 2 :(得分:0)

$('aside').click(function(){
    $('aside').not(this).removeClass('opened');
});