将事件附加到JQuery中的两个项目

时间:2010-11-25 21:27:28

标签: jquery

我想创建一个点击事件,当点击两个不同的项目时它将起作用。 有没有办法做到这一点?

例如,通常我要做的是:

<a id="link1" onclick="doSomething()">link1</a>
<a id="link2" onclick="doSomething()">link2</a>

但我想知道的是,是否有任何事件超载,可能是:

<script>
$("#link1", "#link2").click(function () { 
 alert('doSomething');

 });
</script>

由于

3 个答案:

答案 0 :(得分:1)

选择器应如下所示:

$("#link1, #link2")

看一下jQuery的multiple selector docs

答案 1 :(得分:1)

<script>
$("#link1, #link2").click(function () { 
 alert('doSomething');

 });
</script>

答案 2 :(得分:1)

您可以使用逗号分隔multiple selector,如下所示:

$('#link1, #link2').click(function () { 
  alert('doSomething');
});

You can test it here


但更简单的方法通常是为链接提供一个公共类,这样无论你有2个链接,没有链接还是400个链接......你的代码都没有变化。要做到这一点,给他们这样一个类:

<a href="#" class="link">link1</a>
<a href="#" class="link">link2</a>

然后使用.class selector,如下所示:

$('.link').click(function () { 
  alert('doSomething');
});

You can test that version out here