在jquery click函数中有两个类名

在jquery click函数中有两个类名,jquery,click,Jquery,Click,我使用btn1类来控制一些按钮的显示 我有一个点击功能设置,工作良好 $('#rotation').on('click', '.btn1'... 这将为所有btn1按钮调用相同的单击功能 我试图弄清楚如何拥有相同的显示类,但是为每个按钮调用不同的函数,例如 $('#rotation').on('click', '.btn1 process1'... 单击此项时 <div class="btn1 process1"> <div class="btn1 process2"

我使用btn1类来控制一些按钮的显示

我有一个点击功能设置,工作良好

$('#rotation').on('click', '.btn1'...
这将为所有btn1按钮调用相同的单击功能

我试图弄清楚如何拥有相同的显示类,但是为每个按钮调用不同的函数,例如

$('#rotation').on('click', '.btn1 process1'... 
单击此项时

<div class="btn1 process1"> 
<div class="btn1 process2"> 
单击此项时

<div class="btn1 process1"> 
<div class="btn1 process2"> 

他们不工作了。是否可以这样做,或者我是否需要为每个按钮设置ID,并设置click函数以侦听ID而不是类


感谢您的时间和帮助。

jQuery选择器遵循CSS规则,因此,如果您希望使用两个类作为元素的目标,请不要在类名之间使用空格,如下所示:

$('#rotation')
    .on('click', '.btn1.process1', fn)
    .on('click', '.btn1.process2', fn);
或者,您可以使用一个单击处理程序并使用
hasClass
来标识单击的按钮:

$('#rotation').on('click', '.btn1', function() {
    if ($(this).hasClass('process1')) {
        // do something
    }
    else if ($(this).hasClass('process2')) {
        // do something else
    }
})

我认为您可以使用旧代码,然后在处理程序中执行如下检查:
if($(this).hasClass('process1'))。。。还有…
可能是《干杯金刚》的翻版,谢谢你的链接詹姆斯-有一些我不知道你会做的有趣的事情,比如说。filterThanks Rory。我尝试了这两种方法,并且喜欢hasClass的备选最佳方案——作品优美——干杯伙伴。