4

jqueryを使用してスパンの背景色を設定しようとしています。タイトルのすべての関数を使用しましたが、すべてエラーが発生します。

SCRIPT438:オブジェクトはプロパティまたはメソッド'css' /'attr'/'addClass'をサポートしていません

どうすればこれを解決できるのでしょうか?私が欲しいのはbgの色を変更することだけですが、クラスを設定できるのであれば私は好みます。

コード:

var liList = ul.find('li span');
        $.each(liList, function(index, value){
            if(value.innerText == currPage){
                value.css('background-color', '#D94A38');
            }
        });
4

3 に答える 3

7

each()関数は、オブジェクトDOMではなくjQueryオブジェクトを提供します

への変更

$(value).css('background-color', '#D94A38');

あなたのコードは

var liList = ul.find('li span');
    $.each(liList, function(index, value){
        if(value.innerText == currPage){
            $(value).css('background-color', '#D94A38');
        }
});
于 2013-01-14T12:15:05.707 に答える
6

valuejQuery オブジェクトではありません (DOM オブジェクトです)。

これ:

value.css('background-color', '#D94A38');

次のようにする必要があります。

$(value).css('background-color', '#D94A38');

詳細については、.each()ドキュメントを参照してください。

于 2013-01-14T12:15:03.400 に答える
0

値を $(value) に置き換えれば問題は解決すると思います

于 2013-01-14T12:17:02.580 に答える