紛らわしい質問で申し訳ありませんが、これが私がやろうとしていることです。複数の (ul) アイテムを含むページがあります。(ul) と (li) のクラスを操作するために jquery を使用しています。私がやろうとしているのは、各 (ul) を全体ではなく個人として扱うことです。たとえば、私の:
<ul class="bNav">
<li><a href="#">Home</a></li>
<li><a href="#">The Artists</a></li>
<li><a href="#">The Art</a></li>
</ul>
<ul class="bNav opp">
<li><a href="#">Home</a></li>
<li><a href="#">The Artists</a></li>
<li><a href="#">The Art</a></li>
</ul>
私がjqueryでやろうとしているのは、「opp」クラスが存在する場合に特定のコードを追加することです。そこにない場合は、別のことを行います。私が抱えている問題は、if チェックを実行すると、クラスが存在する場合、すべての (ul) がそのクラスを持っているかのように扱われることです。これが私のコードです:
if ($('.bNav').is('.opp')) {
$('.bNav').addClass('nav').wrap('<nav class="navbar navbar-inverse"><div class="navbar-inner">');
} else {
$('.bNav').addClass('nav').wrap('<nav class="navbar"><div class="navbar-inner">');
}
$('.bNav > li > ul').addClass('dropdown-menu').parent('li').addClass('dropdown').find('a:first').attr('data-toggle', 'dropdown').addClass('dropdown-toggle').append('<span class="caret"></span>');
$('.bNav ul ul').addClass('dropdown-menu').parent('li').addClass('dropdown-submenu');
繰り返しますが、コードはすべての (ul) を 1 つとして扱っています。そのため、クラス「opp」が (ul) のいずれかに存在する場合、すべての (ul) の「opp」クラスの if ステートメントが起動されます。各個人 (ul) がそのように扱われるようにするにはどうすればよいですか? 事前にご協力いただきありがとうございます。
ダミアン