web-dev-qa-db-ja.com

クラス名「nav」を持つ<ul>内のすべての<li>を選択する方法は?

私はjQueryを初めて使用するので、これに本当に苦労していますが、作業中のチュートリアルが壊れているかどうか、それが私かどうかはわかりませんが、次のコードを使用してulのすべてのliを選択していますnavのクラス。

$(".nav ul li");

これは正しいです?誰かが私を正しい方向に向けることができますか?

18
user1940321

建設的に、

  1. すべてのul要素:

    $("ul")
    
  2. クラス名がulのすべてのnav要素:

    $("ul.nav")
    
  3. クラス名がliであるすべてのul要素の下のすべてのnav要素:

    $("ul.nav li")
    
38
Alexander

セレクターを学習するのに役立つヒントを次に示します。

Chrome browser任意のページを開く]ページを右クリックして[要素の検査]を選択します。

このコンソールにコマンドを直接入力できます。いくつかのセレクターのみを試して、何が得られるかを確認してください。 $( 'p')と入力してEnterキーを押すと、すべてのp要素がリストされます。 $( 'ul.nav li)と入力すると、そのセレクターが機能する(何かを返す)かどうかが表示されます。コマンドが有効なセレクターにならない場合、[]を返します。

10
Bryan Myers

navのクラスを持つulのすべてのliを選択します

そのように、.navクラスを使用してul内のすべてのliを選択します。

$('ul.nav li')
2
adeneo

Navのクラスを持つulのすべてのli:

$("ul.nav li");
2
Hristo Yankov

element selector の後に追加します:

$("ul.nav li");

これにより、<li>要素内のすべての<ul class="nav">要素が選択されます

ドキュメントを参照してください: http://api.jquery.com/class-selector/

2
nbrooks
$('ul.nav li')

提案どおり、すべての<li /> in <ul class="nav" />。直接の子供にのみ使用させたい場合:

$('ul.nav > li')

https://developer.mozilla.org/en-US/docs/Web/CSS/Child_combinator

0
murphy1312