javascript getElements ByTagName

1987 ワード

 
  
function getElementsByTagName(node, tagName) {
var elements = [], i = 0, anyTag = tagName === "*", next = node.firstChild;
while ((node = next)) {
if (anyTag ? node.nodeType === 1 : node.nodeName === tagName) elements[i++] = node;
next = node.firstChild || node.nextSibling;
while (!next && (node = node.parentNode)) next = node.nextSibling;
}
return elements;
};
getElementsByTagName()を定義し、使用する方法は、指定された署名を有するオブジェクトのセットを返すことができる.
構文
Dcument.getElements ByTagName(tagname)
説明
getElements ByTagName()メソッドが要素を返す順序は、ドキュメント内の順序です.
特殊文字列「*」をgetElementsByTagName()に渡すと、ドキュメント内のすべての要素のリストに戻ります.要素配列の順序はドキュメント内の順序です.
ヒントとコメント
getElementsByTagName()メソッドに渡す文字列は、大文字と小文字を区別しなくても良いです.
実例
例1
 
  


<br>function getElements() <br>{ <br>var x=document.getElementsByTagName("input"); <br>alert(x.length); <br>} <br>










value="How many input elements?" />


例2
任意の種類のHTML要素のリストをgetElementsByTagName()法で取得することができます.たとえば、次のコードは、ドキュメント内のすべてのテーブルを取得することができます.
 
  
var tables = document.getElementsByTagName("table");
alert ("This document contains " + tables.length + " tables");
例3
文書の構造をよく知っているなら、getElements ByTagName()法を使ってドキュメント内の特定の要素を取得することもできます.たとえば、次のコードは、ドキュメント内の4番目の段落を取得することができます.
var myParagh=document.getElements ByTagName("p")[3];
しかし、特定の要素を操作する必要があれば、getElementById()法を使うほうが効果的だと思います.