Javascript 如何在jquery中检测按钮是否为collpase?

Javascript 如何在jquery中检测按钮是否为collpase?,javascript,jquery,Javascript,Jquery,我有以下按钮: <button class="mdl-button mdl-js-button mdl-button--icon js-user-btn is-collapsed" data-quoteid="@user.UserId"> <i class="icon-chevron-right"></i> </button> 我想在这里触发一个ajax函数,在第一次点击按钮时 在点击按钮的第二秒,不应触发ajax。这可以通过检查

我有以下按钮:

 <button class="mdl-button mdl-js-button mdl-button--icon js-user-btn is-collapsed" data-quoteid="@user.UserId">
       <i class="icon-chevron-right"></i>
</button>
我想在这里触发一个ajax函数,在第一次点击按钮时


在点击按钮的第二秒,不应触发ajax。

这可以通过检查elements类在jQuery中是否有
被折叠来实现。供参考,

if($('.is collapsed')。长度>0){
警报(“1”);
}
/*************或***************/
if($(this).hasClass('is-collapsed')){
警报('2')
}
这将返回
true
false
,以了解该元素中是否存在该类。

请尝试以下操作:

var firstClick = true;
$('.js-user-btn').click(function() {
   if(firstClick ){
     firstClick = false;
     //send Ajax ...
   }else{
     // other code second click ...
   }
});

jQuery有一个方法可以实现这一点:

从文档中:

描述:将处理程序附加到元素的事件。对于每个事件类型,每个元素最多执行一次处理程序

就你而言:

$('.js-user-btn').one('click', function() {...

这将完全满足您的需要-只需询问
if($(This).hasClass('is-collapsed'))
@Roy它会每隔一天返回truetime@DarrenSweeney是否将您的评论转换为答案?:)
$('.js-user-btn').one('click', function() {...