我需要将相同的事件(例如 click
)绑定(bind)到 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 的文档中没有找到任何内容。
谢谢
最佳答案
使用 jQuery add()方法:
$first.add($second).add($third).on('click', handler);
关于javascript - 同时将事件绑定(bind)到多个 jquery 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30256634/