内容が完全に一致する要素を選択する 質問する

内容が完全に一致する要素を選択する 質問する

:contains()さて、 jQueryのセレクターを使って要素を選択する方法はあるでしょうか?のみ入力された文字列

例えば ​​-

<p>hello</p>
<p>hello world</p>

$('p:contains("hello")').css('font-weight', 'bold');

セレクターは両方のp要素を選択して太字にしますが、最初の要素だけを選択するようにします。

ベストアンサー1

いいえ、それを実行する jQuery (または CSS) セレクターはありません。

すぐに使えるfilter:

$("p").filter(function() {
    return $(this).text() === "hello";
}).css("font-weight", "bold");

それはセレクタですが、目的は果たせます。:-)

「hello」の前後の空白を処理したい場合は、$.trimそこで:

return $.trim($(this).text()) === "hello";

世の中の未熟な最適化者にとって、一致や類似性がなくても構わないのであれば、直接 を使用することでと<p><span>hello</span></p>の呼び出しを回避できます。$textinnerHTML

return this.innerHTML === "hello";

...しかし、多くそれが重要になるには段落が多すぎるので、おそらく他の問題が先に発生するでしょう。 :-)

おすすめ記事