2

jquery api web サイトからこのコードを見ていますが、どのように機能するのかわかりません

私はこの部分がどのように機能するかを理解していません [ 0 ].nodeName, 0 は何をしますか?

        $( "<b></b>" ).html( $( ":root" )[ 0 ].nodeName ).appendTo( "#log" );

完全なコードについては、 http://api.jquery.com/root-selector/ にアクセスしてください。

4

3 に答える 3

1

[0]ゼロインデックスでjQueryjavascriptオブジェクトを返すオブジェクト(コレクション)で使用されるインデクサーであり、 jQueryオブジェクトではなくDOMオブジェクトの属性であるにアクセスできます。セレクターが複数の要素を返す場合、インデックスを使用して特定の要素にアクセスできます。ゼロベースのインデックスであるため、ゼロは最初の要素であることを忘れないでください。DOMnodeName

$(":root")[0].nodeName //For first element
$(":root")[1].nodeName //For second element

インデクサーの代わりにget関数を使用することもできます[]

$(":root").get(0).nodeName //最初の要素用 $(":root").get(0).nodeName //2 番目の要素用

于 2013-09-26T07:09:05.327 に答える
0

eg によって返される jQuery オブジェクトはjQuery( ':root' )、要素が 1 つしかない場合でも、常に要素のセットを返します。インデックスを介して、見つかった各 DOM 要素にアクセスできます。

またはjQueryのドキュメントの言葉で:

jQuery オブジェクト自体は配列のように動作します。これには長さのプロパティがあり、オブジェクト内の要素には [0] から [length-1] までの数値インデックスでアクセスできます。jQuery オブジェクトは実際には Javascript Array オブジェクトではないため、join() などの真の Array オブジェクトのすべてのメソッドを持っているわけではないことに注意してください。

http://api.jquery.com/Types/#jQuery

使用できる要素が少なくとも 1 つ見つかったかどうかを調べるには、

if( jQuery( ':root' ).length > 0 ) { … }

MDN には、DOM ノードのプロパティとメソッドの概要がよくまとめられています: https://developer.mozilla.org/en-US/docs/Web/API/Node

于 2013-09-26T07:12:36.130 に答える