jquery:$(这个)混乱

时间:2009-09-08 01:15:36

标签: jquery

我有3个按钮。我试图得到它,以便当点击一个时它会得到一个'this-button'类,并且该类将从其他类中删除。

  <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");
});

这不能按预期工作。

这是尝试:检查firebug中的类。 http://jsbin.com/orifo/edit

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

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

感谢。

2 个答案:

答案 0 :(得分: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>

答案 1 :(得分:0)

这适用于我。我正在使用IE 7和jQuery 1.32。