0
$("#btn").button().click(function() {
    $("#textinput").css('color',function(clr) {
        if ($("#textinput").css('color') == '#000000')
            return '#ff0000';
        else
            return '#000000';
    });
});

何らかの理由で、入力テキストの色を切り替えることができません。jQueryの.cssドキュメントには次のように記載されています。

異なるブラウザは、論理的には等しいがテキスト的には等しくないCSSカラー値を返す場合があります(例:#FFF、#ffffff、およびrgb(255,255,255))。

一般に、UIオブジェクトのプロパティ値を取得するにはどうすればよいですか(css値は一定ですか?)?

thnx!

4

1 に答える 1

1

クラス.whiteとクラス.blackを作成し、.addClass()と.removeClass()を使用します。html要素には複数のクラスを設定できます

$("#btn").button().click(function() { 
    if ($("#textinput").hasClass("white"))
    {
        $("#textinput").removeClass("white").addClass("black");
    }
    else {
        $("#textinput").removeClass("black").addClass("white");
    }
}); 

これはこのような単純なタスクには多すぎるコードだと思うので、誰かがこれに対してより洗練された解決策を投稿すると思います。

更新:代わりにtoggleClassを使用してください:http://api.jquery.com/toggleClass/

于 2012-07-20T06:51:25.867 に答える