将事件同时绑定到多个jquery元素

时间:2015-05-15 10:01:44

标签: javascript jquery events bind

我需要将相同的事件(例如click)绑定到 n jquery元素。我知道我可以使用选择器轻松实现这一结果:

$("#first, #second, .third").on("click", function(){});

但是如果我想使用jquery元素列表而不是选择器呢?

这是我现在正在使用的解决方案,假设您因函数而获得$first$second

var $first = $("#first");
var $second = $("#second");

$([$first[0], $second[0]]).on("click", function(){
    alert("click " + this.innerText)
});

在这里找小提琴:https://jsfiddle.net/0z2r55d6/

正如您所看到的,我需要为每个jquery元素提取HTML元素并将其推送到数组中。我觉得这很丑陋而且不方便..有没有更好的方法来达到同样的效果?我在jquery的文档中找不到任何内容。

由于

1 个答案:

答案 0 :(得分:1)

使用jQuery add()方法:

$first.add($second).add($third).on('click', handler);