如果使用Jquery条件,我该如何写这个?

Dup*_*o W 20 javascript jquery

这是我的函数atm:

$(document).ready(function() {

$("#knd").click(function() {
    $("#wars").animate({
        opacity:'1'
    }); 


}); 

}); 
Run Code Online (Sandbox Code Playgroud)

它工作得很好,但我想添加选项以再次单击删除该框,我想用if语句执行它,但我不是100%使用Jquery中的语法.我想要的东西是:

if(#wars is visible) {

$("#wars").animate({
         opacity:'0'
    }); 
Run Code Online (Sandbox Code Playgroud)

我该怎么写这个if语句?

解:

$(document).ready(function() {

$("#knd").click(function() {
if($("#wars").css('opacity') === '0') {         
    $("#wars").animate({
    opacity:'1'
    }); //end of animate
}


else {
$("#wars").animate({
    opacity:'0'
});  //end of animate
}


}); //end of KND click function
}); //end of doc ready function
Run Code Online (Sandbox Code Playgroud)

我不得不改变可见性并将其设置为不透明度,然后它就像if语句的魅力一样.

Fel*_*lix 5

你可以使用.is():visible selector:

if($('#knd').is(':visible')) {
    $("#wars").animate({
        opacity:'0'
    }); 
}
Run Code Online (Sandbox Code Playgroud)


moh*_*ias 3

您还可以检查以下条件:

if($('#knd').css('visibility') === 'visible') {
    $("#wars").animate({
        opacity:'0'
    }); 
}
Run Code Online (Sandbox Code Playgroud)

建议的解决方案:

if($('#wars').css('opacity') === '0') {
    $("#wars").animate({
        opacity:'1'
    }); 
}
Run Code Online (Sandbox Code Playgroud)