2009-10-07 60 views
1

如果Box没有动画并且显示值为none,或者fadeOut,如果#Box有显示,当class =“display”被点击时,此函数应该淡入id =“Box”价值不是无。哪里不对?Jquery淡入淡出脚本不起作用

$(document).ready(function() { 
    $('.display').click(function() { 
     var currentDisplayValue = $('#Box').css('display'); 

     if (':animated') { 
     stop() 
     }; 

     else if (currentDisplayValue == 'none') { 
      $('#Box').fadeIn("slow"); 
     }; 

     else { 
      $('#Box').fadeOut("slow"); 
     }; 
    }); 

感谢

回答

3

尝试:

$(function() { 
    $(".display").click(function() { 
    var box = $("#Box"); 
    if (box.is(":animated")) { 
     box.stop(); 
    } else if (box.is(":hidden") { 
     box.fadeIn("slow"); 
    } else { 
     box.fadeOut("slow"); 
    } 
    }); 
}); 

你和stop()需求(大括号后如分号)有一些语法错误被应用到一个jQuery集。最后,不要像你在做的那样检查当前的显示CSS值。改为使用:hidden选择器。