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

Bind event to multiple jquery elements simultaneously

我需要将相同的事件(例如 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)
});

在这里找到 fiddle 一起玩:https://jsfiddle.net/0z2r55d6/

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

谢谢

使用jQueryadd()方法:

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