Jquery 具有类值的if语句不起作用

Jquery 具有类值的if语句不起作用,jquery,class,if-statement,Jquery,Class,If Statement,有人能给我解释一下为什么这不起作用吗。从逻辑上讲,这是有道理的,但有更好的方法吗 $('#n2').click(function() { if ($('#b0').attr('class') == 'box position0') { movedown2 } })​ 你可以像下面这样做 $('#b0').is('.box.position0')) 或 您还缺少函数调用() 从这把小提琴中可以看出,您的jQuery应该很好地进入if语句: 您的movedow

有人能给我解释一下为什么这不起作用吗。从逻辑上讲,这是有道理的,但有更好的方法吗

$('#n2').click(function() {
    if ($('#b0').attr('class') == 'box position0') {
        movedown2
    }
})​
你可以像下面这样做

$('#b0').is('.box.position0'))

您还缺少函数调用
()


从这把小提琴中可以看出,您的jQuery应该很好地进入if语句:


您的
movedown2
在其中浮动,这可能是您的问题所在。您必须为我发布您的HTML以确定。

如果没有附带的HTML,我们无法判断这是否正确。当单击#n2时,它应该运行函数movedown2,但只有当#b0的类等于“box position0”时,您可能想使用哪个部分失败?是否单击类检查?您是否已在window.alert()或console.log()中抛出以查看哪个部分出现故障?您还可以考虑使用hasClass函数而不是attrok,因此下面是我的代码,我需要它在切换类时更新该类,以便它仅在特定类时运行该函数。hasClass也不适用于此
$('#b0')[0].className == 'box position0'
$('#n2').click( function(){ 
   if( $('#b0').is('.box.position0') ) {
     movedown2(); //Note the () added which was missing in your orig code
   } 
});