0

私はこのような特定のテキストを持っています:

<li>certain text</li>

次に、「テキスト」と書かれた部分に色を付けたいと思います。これで私は完全なテキストを見つけることができます:

$(function() {
    var color = $('*:contains("text")');
    color.css("color", "red");
});

問題は、このコードがテキスト全体を赤色に変えることです。「テキスト」と書かれている部分だけを取得し、その部分でcssを実行するにはどうすればよいですか?

4

2 に答える 2

4

liブラウザは単語ではなく要素にのみスタイルを適用できるため、コンテンツを変更する必要があります。

あなたはそれを行うことができます:

$('li:contains("text")').each(function(){
    var licontent = $(this).html();
    licontent = licontent.replace(new RegExp("text", "g"), '<span style="color:red">text</span>');
    $(this).html(licontent);
});

デモンストレーション

*セレクターには気をつけてください。ドキュメントを含む のすべての親を取得することを理解する必要がありliます...

于 2012-11-13T12:34:29.680 に答える
0

この方法で実行できますが、テストされていません:

$(function() {
    var color = $('body').text('text');
    color.css("color", "red");
});
于 2012-11-13T12:35:49.917 に答える