かなり単純な質問ですが、答えを見つけることができないようです。
さまざまなソースからの HTML ページがいくつかありますが、それらの<h2>
要素には大文字の文字列が含まれています。そのような:
<h2>Are there OTHER USES for this medicine?</h2>
私はこれらの通常の文をケースにしようとしています。つまり、
<h2>Are there other uses for this medicine?</h2>
CSS ですべて小文字にすることから始めました。
h2 {
text-transform: lowercase;
}
最初の文字を大文字にするだけの関数を作成して、jQuery でそれらを操作したいと思っていたからです。
問題はh2
、ページ上の各要素の最初の文字だけを大文字にする jQuery 関数をどのように作成すればよいかということです。
このスレッドを読んだ後、これを試しました:
function capitaliseFirstLetter(string){
return string.charAt(0).toUpperCase() + string.slice(1);
}
$('h2').each(function(){
capitaliseFirstLetter($(this).text());
});
しかし、それは機能せず、コンソールにエラーも表示されなかったので、何が問題なのかわかりません。
編集
私はこの質問で 1 つの大きな見落としをしました。使用する
text-transform: lowercase
I を小文字にしたので、
<h2>What should I do in case of OVERDOSE?</h2>
なりました
<h2>What should i do in case of overdose?</h2>
@ marcelo-biffaraのソリューションを使用したとき。(または:first-letter
CSS 構文。)
さて、複雑な正規表現を使用して、文字列 " i " を大文字にする必要がありますか?
編集2
「 i 」が 2 回出現する場合 (「服用量が多すぎる場合はどうすればよいですか?」など)、それらを「 I 」に置き換えるループが必要ですか?