如何用jQuery更改子DIV的类?

时间:2012-10-08 01:34:12

标签: javascript jquery

我有以下内容:

<li>
   <a id="show">
      <div class="sprite-blank" ></div></a></li>

如何使用jQuery将其更改为:

<li>
   <a id="show">
      <div class="sprite-balloon" ></div></a></li>

4 个答案:

答案 0 :(得分:4)

$('li a#show div').removeClass('sprite-blank').addClass('sprite-balloon');

您也可以使用toogleClass()

$('li a#show div').toggleClass('sprite-blank sprite-balloon');

答案 1 :(得分:2)

$('.sprite-blank').toggleClass('sprite-blank sprite-balloon');

这将更改页面上所有可用的.sprite-blank元素,如果您需要更具体,只需更改初始选择器,例如

$('a > .sprite-blank').toggleClass('sprite-blank sprite-balloon');

答案 2 :(得分:1)

简单地说:

$(".sprite-blank").removeClass("sprite-blank").addClass("sprite-balloon");

答案 3 :(得分:0)

我认为你需要这样的东西:

http://jsfiddle.net/yUaZe/

HTML

<li>
   <a class="show" href="#">Show
     <div class="sprite sprite-hide" >Test</div>
    </a>
</li>
<li>
   <a class="show" href="#">Show
     <div class="sprite sprite-hide" >Ha</div>
    </a>
</li>

CSS

.sprite-balloon {
    display:block;
}
.sprite-hide {
 display:none;   
}
​

JS

$('.show').click(
    function(event) {
    var that=$(this);
    event.preventDefault();
    that.find('.sprite').toggleClass('sprite-balloon');
    that.find('.sprite').toggleClass('sprite-hide');
    console.log(that);
    }
    );​