0

私は次のコードを持っています:

alert($("div", data).attr("style.background"));

このコードで色の値を選択したいと思います:

<div id = "test"style="font-family: serif; font-size: x-large; font-weight: bold; background: #5e5; text-align: center; margin: 0px; padding: 16px;">

の代わりに何を使用すればよいかわかりませんstyle.background

どんな助けでも素晴らしいでしょう、ありがとう!

編集:

その他のコード

 success: function (data) {

                    alert(data);
                    alert($("div", data).css("background"));



                },
4

2 に答える 2

4

css()の代わりに使用してみてくださいattr()

 alert($("div", data).css("background"));

色だけを取得するにはbackground-color、の代わりに渡す必要がありbackgroundます。これは他のCSSプロパティでも機能します。

于 2012-07-05T16:36:30.317 に答える
1

jQueryセレクター$('div',data)が機能しない理由dataは、jQueryオブジェクトではなく文字列であるためです。あなたが望むものを手に入れるために、あなたはする必要があります:

 $(data).filter('div')

これにより、文字列div内に含まれるようになりdataます。

色だけが必要な場合は、次を試してください。

$(data).filter('div').css('backgroundColor')

ただし、rgb(...)jQueryはすべてのカラーコードをrgbに変換するため、これにより色がフォーマットで返されます。

ただし、属性で実際の値を使用するstyle場合は、属性自体を解析して答えを見つける必要があります。

var style = $(data).filter('div').attr('style');
var styleObj = {};
$.each(style.split(';'),function(){
    var rule = this.split(':');
    styleObj[$.trim(rule[0])] = $.trim(rule[1]);
});


alert(styleObj.background) // "#e55"

jsFiddleデモ

于 2012-07-05T16:38:40.090 に答える