2009-09-08 60 views
1

我有3个按钮。我试图获得它,这样当点击它时,它会得到一个“这个按钮”的类,并从其他类中删除该类。

<button id="button1">Button1</button> 
    <button id="button2">Button2</button> 
    <button id="button3">Button3</button> 

因此,这里是我的简单的事件功能:

$('button').live("click", function(){ 
    $(this).addClass("this-button").siblings().removeClass("this-button"); 
}); 

预期这不起作用。

这里试试:检查萤火虫中的类。 http://jsbin.com/orifo/edit

我真的很困惑。我认为很明显,$(this)是指所有的按钮,而不仅仅是最近一次点击的按钮。为什么是这样?它不应该是最新的点击?

有人可以解释为什么这不起作用。

谢谢。

+0

它为我工作。我加了 。这个按钮背景颜色:黄色; },我点击的按钮变成了黄色,而其他的则没有。 – 2009-09-08 01:24:59

回答

1

这是为什么?它不应该是最新的点击?

是的,它是一个点击。对我来说工作得很好。这是我测试的确切片段。

<style> 
    .this-button { border: solid red 1px; } 
</style> 
<body> 
<div> 
    <button id="button1">Button1</button> 
    <button id="button2">Button2</button> 
    <button id="button3">Button3</button> 
</div> 
<script type="text/javascript" src="jquery-1.3.2.js"></script> 
<script type="text/javascript"> 
    $('button').live('click', function() { 
     $(this).addClass('this-button').siblings().removeClass('this-button'); 
    }); 
</script> 
</body> 
0

这对我有用。我使用的是IE 7和jQuery 1.32。