这是我的代码:
let btnOne = $('.btn-one')
let btnTwo = $('.btn-twoo')
let btnThree = $('.btn-three')
我想在单击这些按钮中的任何一个时执行一些操作。我怎样才能做到这一点?
我已经尝试过了
$(btnOne, btnTwo, btnThree).click(function (e) {
// Some action
})
但是没有成功。
我怎样才能实现这个目标?
谢谢。
PS。我只想通过变量来实现这一点。
最佳答案
由于唯一的选择是使用变量,您可以将它们组合成一个数组并使用 .each
分配事件处理程序:
$([a,b,c]).each(function() { $(this).click(....
直接将数组与 .click
一起使用是行不通的
var a = $(".a")
var b = $(".b")
var c = $(".c")
$([a,b,c]).each(function() { $(this).click(function() { alert($(this).text()); }) });
.a,.b,.c { border: 1px solid #ccc; width: 100px; height: 1.25em; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='a'>a</div>
<div class='b'>b</div>
<div class='c'>c</div>
或者你可以使用.add
来组合jquery集合(每个集合只能包含一个元素,它仍然是一个集合),例如:
a.add(b).add(c).click(function() { ...
它使用链接来添加每个附加变量
关于javascript - 如何捕获所有这些变量的事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50047289/