document.getElementById のブラウザによる動作の違い

javascript入門すぐる自分。
非同期RSS読み込みをやるにはajaxが必要なので、どうしてもjavascriptの記述を切り離せない・・・。

document.getElementById のブラウザによる動作の違い

Google Chrome 3.0と
IE7とで挙動が違ったのでとりあえずメモです。

IE7⇒ headerで関数呼び出して実行した、IDの包括内容の入れ替えがすんなりできた
GC3⇒ できなかった。なぜなら関数実行時点でIDのdivの描写が追いついていなかったから。

Google Chrome3 のjavascriptデバッガで出たエラーコードは

Uncaught TypeError: Cannot set property 'innerHTML' of null

ちゃんとHTML書き出しが終わってからdocument.getElementById実行するように設定するのはjsでは当たり前のマナだろうね。
よくわからなかったので、とりあえず関数呼び出しを、例のIDのdiv要素後にもってきました。

var での宣言、スコープに右往左往する、PHPに甘やかされた自分。
AS2からも宣言は厳密になったし、大事なものなんだけどね。

No Comments yet »

このコメント欄の RSS フィード TrackBack URI

コメントをどうぞ

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <img localsrc="" alt="">


Powered by WordPress with GimpStyle Theme design by Horacio Bella.
Entries and comments feeds. Valid XHTML and CSS.