2012-08-08 47 views
0

我有3个按钮,如下所示。JQuery代码不工作在一个按钮点击?

<div id="make_larger"> 
<button type="button">Large</button> 
</div> 
<div id="make_small"> 
<button type="button">Smaller</button> 
</div> 
<div id="make_normal"> 
<button type="button">Normal</button> 
</div> 

我想,当我将在“大”按钮的颜色单击要更改为蓝色(使用.selected CSS类为它).Jquery代码如下所示。

$('#make_larger').bind('click', function() { 
     $('body').addClass('large'); 
     $('body').removeClass('normal'); 
     $('body').removeClass('smaller'); 
     $(this).addClass('selected'); 

    }); 

但它不工作。颜色没有被改变。 为什么?

请任何帮助。

+0

老兄你真的应该接受更多的答案 – MichaelS 2012-08-08 08:28:07

+0

http://i.stack.imgur.com/uqJeW.png也是你一个很好的解释需要开始做,OP :) – 2012-08-08 08:28:33

+0

替换绑定与.... – 2012-08-08 08:29:08

回答

0

改变最后一行

$(this).children('button').addClass('selected'); 
0

HTML

<div id="make_larger"> 
    <button type="button">Large</button> 
</div> 
<div id="make_small"> 
    <button type="button">Smaller</button> 
</div> 
<div id="make_normal"> 
    <button type="button">Normal</button> 
</div> 
<style type="text/css"> 
    .selected{background:blue} 
</style> 

jQuery的

$('#make_larger').click(function() { 
    $('#make_larger button').addClass('selected'); 
}); 

DEMO http://jsfiddle.net/mRwMt/10/

+2

或'$('button',this).addClass('selected');' – undefined 2012-08-08 08:34:54