外部スクリプトファイルを定義する script 要素 に defer="defer" 属性を追加すると、あるケースで、internet explorer (IE) がそのスクリプトファイルを解析できなくなるという問題の紹介です。 「あるケース」というのは、div 要素などの innerHTML を書き換えることです。自分でそのようなコートを書かなくても、例えば、SWFObject を使って Flash を埋め込む場合に innerHTML の書き換えが行われます。 ただし、html コードを書く順番が問題で、defer 属性を追加した script タグが出現した後、innerHTML を書き換える場合に限ります。順番が反対の場合は問題は起こりません。 確証がないのではっきりしたことは言えませんが、自分が試した限りでは、スクリプトの取得に時間がかかる(サーバーの応答が遅い)と問題が発生する
![defer 属性つき script 定義と IE の問題](https://cdn-ak-scissors.b.st-hatena.com/image/square/68ce4e0e5565f6629669b337f7d11e0bcbcb51df/height=288;version=1;width=512/http%3A%2F%2Fsurferonwww.info%2FBlogEngine%2Fimage.axd%3Fpicture%3D2012%252F12%252FScriptDeferProblem.jpg)