div 内のメイン ul にクラスと ID を追加するにはどうすればよいですか?
<div id"navcont">
<ul>
<li>One
<ul>
<li>Sub One</li>
</ul>
</li>
<li>Two</li>
</ul>
</div>
div 内のメイン ul にクラスと ID を追加するにはどうすればよいですか?
<div id"navcont">
<ul>
<li>One
<ul>
<li>Sub One</li>
</ul>
</li>
<li>Two</li>
</ul>
</div>
子セレクターを使用するだけです:
$('#navcont > ul').addClass('theClass').attr('id', 'theID');
これを試して:
$('#navcont > ul').attr("id", "some-id").addClass("some-class");
$("#navcont > ul").addClass("myClass").attr("id", "myId");
これにより、指定されたクラスと ID が、選択された div 内の任意のul に追加されますが、その ul が #navcont div の子である場合のみです。他のタグ内の ul タグは選択されません。最初に選択した ul タグをターゲットにする場合は、次のように指定できます。
$("#navcont > ul").eq(0).addClass("myClass").attr("id", "myId");
これにより、#navcont 内の最初の ul のみが選択されるようになります。div 内に複数の ul タグがある可能性がある場合は、対象にするタグとそれぞれの処理方法を検討する必要があります。
また、クラスは何度も使用できますが、id はドキュメントに固有であり、繰り返されないようにする必要があります。複数の ul タグを扱っていて ID を割り当てる場合は、それぞれが一意である必要があります。
これには最初のセレクターを使用できます。
$("#navcont ul:first")
これにより、DIv 内の最初の UL 要素のみが選択されることに注意してください。