1

を使用して要素を検索するdocument.getElementsByTagName()と、HTMLCollection. 要素にids がある場合、出力にはindexidを持つ要素が含まれます。 ここに画像の説明を入力

問題は、この構造はすべてのブラウザで一定のままなのか、それとも変化するのかということです。

(function() {
  var inputs = document.getElementsByTagName("div")[0].children;
  console.log(inputs);
})()
<div id="content">
  <input type="text" id="input1" />
  <input type="text" id="input2" />
  <input type="text" id="input3" />
  <input type="text" id="input4" />
</div>

4

1 に答える 1

1

インデックスとして使用される文字列に一致する要素が複数ある場合、ブラウザがこれを同等に行うことに依存することはできません。

ブラウザーの互換性
インデックス (または namedItem の引数) として使用される文字列に一致する要素が複数ある場合、ブラウザーによって動作が異なります。Firefox 8 は、DOM 2 および DOM4 で指定されたとおりに動作し、最初に一致した要素を返します。この場合、WebKit ブラウザーと Internet Explorer は別の HTMLCollection を返し、Opera は一致するすべての要素の NodeList を返します。

ソース: https://developer.mozilla.org/en-US/docs/Web/API/HTMLCollection

于 2016-01-08T11:49:01.007 に答える