DOMによる要素生成後にクラッシュすることがある

症状

document.createElement() メソッドを用いて要素を生成するとMacIEの動作が不安定になり、クラッシュすることもある。具体的には以下のような症状がある。

  • AppleScriptでa要素を生成した後、早く親要素に挿入しないと不安定になる。
  • input要素を生成した後、type属性を設定しようとするとクラッシュする。

例示

<script type="text/javascript">
function create() {
  var obj = document.getElementById('l1');
  var ipt = document.createElement('input');
  ipt.type = 'text';
  obj.appendChild(ipt);
}
</script>

<form action="b040.html">
<div><input type="button" value="input生成" onclick="create()"></div>
<div id="l1"></div>
</form>

「input生成」ボタンを押すとtype属性がtextのinput要素(一行入力ボックス)を生成します。

補足

a要素生成時の問題点についてはMacIE5.1 Carbon : AppleScript からの DOM いぢりでクラッシュで、input要素生成時の問題点についはMacIE5.1 Carbon : さまよい生成要素でクラッシュで詳しく説明されているので参考にしてください。

修正状況

OSX版MacIE5.1で不具合の発生が確認されています。OS9版MacIE5では発生しにくいようです。

関連記事

スポンサーリンク

firesymfony Symfonyデバック用Firebug拡張[Firefox]

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る