getElementsByTagNameによって返されるライブ NodeList は、要素のドキュメントの順序を保持することを知っています。
getElementsdByClassName、getElementsByNameおよびquerySelectorAllメソッドに当てはまりますか?
これらのメソッドもドキュメントの順序を保持しますか?
DOM/HTML5 W3C 標準のリンクをいただければ幸いです。
getElementsByTagNameによって返されるライブ NodeList は、要素のドキュメントの順序を保持することを知っています。
getElementsdByClassName、getElementsByNameおよびquerySelectorAllメソッドに当てはまりますか?
これらのメソッドもドキュメントの順序を保持しますか?
DOM/HTML5 W3C 標準のリンクをいただければ幸いです。
はい。いずれもドキュメント順・ツリー順です。
getElementsByName( DOM Level-2-HTML ) は、NodeListquerySelectorAll( Selectors APINodeList ) は「ドキュメント順」を返しますgetElementsByTagName( DOM ) を返しますHTMLCollectiongetElementsByClassName( DOM ) を返しますHTMLCollectionHTMLCollectionsとNodeListsは両方とも持つように指定されています
要素はツリー順にソートされます。
それらがindize経由でアクセスされるとき。NodeList がライブであるかどうかは実際には問題ではありません (もちろん、実際のドキュメントの順序は、静的な NodeList に保存されている順序とは対照的に変更される可能性があります)。
いいえ、すべてが同じように機能するわけではありません。getElementsByTagNameメソッドのみがライブ コレクションを返します。
このgetElementsByTagNameメソッドは、NodeList要素のライブ コレクションであるオブジェクトを返します。
このquerySelectorAllメソッドはNodeList、ライブ コレクションではないオブジェクトを返します。
およびメソッドは、ライブ コレクションではないオブジェクトgetElemendsByClassNameを返します。getElementsByNameHTMLCollection
(別のドキュメントでは、 aまたは a のgetElemenetsByNameいずれかが指定されていることに注意してください。)HTMLCollectionNodeList