【发布时间】:2025-11-28 10:05:01
【问题描述】:
我需要将相同的事件(例如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 的文档中没有找到任何内容。
谢谢
【问题讨论】:
-
$first.add($second).add($third).on('click', handler);或者改用普通类 -
@A.Wolff 这就像一个魅力,谢谢。请回答您的解决方案,以便我接受它:)
-
对不起,我很忙,没有时间做出相关的回答。你应该接受 Apul 的回答 :)
标签: javascript jquery events bind