HTMLドキュメント内の要素にアクセスする。

getelement.png

getElementById

IDは各ドキュメントに一個だけしか存在してはいけない。
どうやら、入れ子になっている内側は探してくれないようだ。
XMLでは使えないらしい。

getElementsByTagName

タグネーム(html,div,idとか)
XMLの内容を取得するときは、複数取得できて配列みたいにできて便利。

タグの名前がみつからないときは、無視したい場合

var someObj=xmlObj.getElementsByTagName("miffy");
if(someObj.length>0){
//タグmiffyがあった場合の処理
}else{
alert("タグmiffyはありません");
}

getElementsByName

idと違って複数の要素に同じ名前をつけてもok

オブジェクトを取得した後

textContent

innerHTML

これで取得できない場合もある。タグも含めて取得してくれる。

innerText

<li>枝豆<span>100</span>g</li>

こういう時。
.lastChild.innerText

とやっても結果が、100じゃなくて、100gになるのが困った。

簡単なメソッド

function $() {
    if (arguments.length == 1) {
        return b(arguments[0])
    }
    var a = [];
    $c(arguments).each(function(d) {
        a.push(b(d))
    });
    return a;
    function b(d) {
        if (typeof d == "string") {
            d = document.getElementById(d)
        }
        return d
    }
}

サポートサイト Wikidot.com