3

こんにちは、ifステートメントを使用して、divの不透明度が0.5の場合、クリックイベントでdivの不透明度を変更しています。不透明度が0の場合は0に変更されるため、0.5に変更されます。次のjqueryコードを使用しています。不透明度を0.5から0に変更しますが、もう一度クリックして不透明度を0から0.5に変更すると機能しません。Plsはコードを見てください

$("#one_star").click(function(){
    if($(this).css({"opacity":"0.5"}))
    {
        $(this).css({"opacity":"0"});
    }
    else if(!$(this).css({"opacity":"0.5"}))
    {
        $(this).css({"opacity":"0.5"});
    }
});

私は間違った構文を使用していますか? 任意の提案pls

4

4 に答える 4

4

$(this).css({"opacity":"0.5"}) 式はブール値の true または falseを返す必要がありますが、それ以外の場合は実行されません。

これを試して、

if($(this).css("opacity") == "0.5")
 { 
        $(this).css({"opacity":"0"});
 }
 else 
 {
     $(this).css({"opacity":"0.5"});
 }
于 2012-06-11T06:11:58.593 に答える
1

あなたifの は実際には CSSopacityプロパティをチェックしていません。

これを行う必要があります:

if ( $(this).css('opacity') == "0.5" ) {
   //do stuff
}
于 2012-06-11T06:13:14.537 に答える
0
if( $(this).css("opacity") == "0.5") ){
        $(this).css({"opacity":"0"});
} else {
        $(this).css({"opacity":"0.5"});
}
于 2012-06-11T06:13:04.787 に答える
0

そうでないかどうかを確認する必要はありません。else 句を使用するだけです。

$("#one_star").click(function(){
    if($(this).css("opacity") === "0.5") {
        $(this).css({"opacity":"0"});
    } else {
        $(this).css({"opacity":"0.5"});
    }
});
于 2012-06-11T06:14:11.790 に答える