カテゴリー︎: 【jQuery】
例えば、下記ソースのように、1つだけのクラス名を指定して
特別扱いにしたいクラス名を追加する場合はjQueryを使えば簡単に解決する。
【例】 .yasai_02 に 新しいクラス名を追加する
↓
<li class="yasai_01">きゅうり</li> <li class="yasai_02">かぼちゃ</li> <li class="yasai_03">とまと</li> <li class="yasai_04">じゃがいも</li> <li class="yasai_05">たまねぎ</li> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script> $(function(){ $("li.yasai_02").addClass('new_class'); }); </script>
.yasai_02に、追加で新しいクラス名 「new_class」 が追加された。
次は
任意の文字列を探して、新しいクラス名を追加する方法
【例】 .yasai_03 の 文字列「とまと」に新しいクラス名を追加する
↓
<li class="yasai_01">きゅうり</li> <li class="yasai_02">かぼちゃ</li> <li class="yasai_03">とまと</li> <li class="yasai_04">じゃがいも</li> <li class="yasai_05">たまねぎ</li> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script> $(function(){ $("li.yasai_03:contains('とまと')").addClass('new_tomato'); }); </script>
.yasai_03に、追加で新しいクラス名 「new_tomato」 が追加された。
このように、jQueryを使えば
任意の文字列を探して、自分の好きなクラス名を追加することができる。
あとは、追加したクラス名をcssで装飾すればよい。
もしも、jQueryでcssも変更したい場合は次のソースにすれば良い。
【サンプルコード】
↓
<li class="yasai_01">きゅうり</li> <li class="yasai_02">かぼちゃ</li> <li class="yasai_03">とまと</li> <li class="yasai_04">じゃがいも</li> <li class="yasai_05">たまねぎ</li> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script> $(function(){ $("li.yasai_03").addClass('new_class'); $("li.yasai_03").css('color','red'); }); </script>
最後は
上記のサンプルとは違うパターンで
一般的の使い方として
li に付与するクラス名は共通で使うことが多いと思う
その場合には if文で 「文字列」を判別して新しいクラス名を追加する方が簡単である。
コードが冗長で美しいコードではないが、、、
なにかのヒントにつながれば幸いである。
【サンプルコード】
↓
<li class="yasai">きゅうり</li> <li class="yasai">かぼちゃ</li> <li class="yasai">とまと</li> <li class="yasai">じゃがいも</li> <li class="yasai">たまねぎ</li> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script> $(function(){ if($('li.yasai').is(":contains('きゅうり')")){ $("li.yasai:contains('きゅうり')").addClass('add_kyuri').css('color','green'); } if($('li.yasai').is(":contains('かぼちゃ')")){ $("li.yasai:contains('かぼちゃ')").addClass('add_kabotya').css('color','blue'); } if($('li.yasai').is(":contains('とまと')")){ $("li.yasai:contains('とまと')").addClass('add_tomato').css('color','red'); } if($('li.yasai').is(":contains('じゃがいも')")){ $("li.yasai:contains('じゃがいも')").addClass('add_jyagaimo').css('color','brown'); } if($('li.yasai').is(":contains('たまねぎ')")){ $("li.yasai:contains('たまねぎ')").addClass('add_tamanegi').css('color','orange'); } }); </script>