高見知英のかいはつにっし(β)

高見知英のアプリケーション開発日誌 のほか、地域活動などの活動報告ブログ。

JavaScriptでの、onLoadとmain(仮)の違い

 いやぁ、はまりました(x_x;)
 JavaScriptを使う場合、スクリプトのルート(どこの関数にも属さない部分 仮にmainと呼ぶことにします)に書いたのと、bodyタグのonLoadで関数を呼び出すのとでは、document.getElementsByTagNameなどの返す値が違います。
 考えてみればその通りなんですが、mainに書くと、documentは当然ながらscriptタグの部分までしか作成されておらず、中のimgタグをリストアップしようと思っても出来ません。対してonLoadならば、ちゃんと全文が作成されており、body内の操作ができます。
FirefoxJavaScriptコンソールで正常に動作するのに、document.getElementsByTagName(*)がscriptタグのあたりで止まるので、何でかなぁと思ったら…。
 んー、たぶんJavaScriptを使う人にとっては常識なんでしょうが、なかなか気づきにくいです。あとでどこかに書いた方がいいだろうな。