2011-02-01から1ヶ月間の記事一覧

online comment (オンラインコメント)

uupaa.js のコメントは、多くの場合オンラインコメントとして記述しています。例えば、uu.ajax の GC部分では function gc(abort) { if (abort) { // [IE6][IE7][FIX] xhr.abort throw exception // http://twitter.com/uupaa/status/26953945895 try { xhr …

IE9RC で document が const になり再定義が不可能になった

IE9RC の挙動を調べています。 IE9RC では @amachang さんの /*@cc_on var doc = document; eval('var document = doc'); @*/ が封印されてるhttp://twitter.com/#!/uupaa/status/35942322231320576 残念ながら、 @amachang さんの発案した方法がIE9で封印さ…

innerHTML = "" まとめ

HTML5をサポートしていないIE6〜IE8で、node.innerHTML = "..."; のように HTML5 で追加された新要素含んだ文字列を innerHTML に与えると、次のいずれかの条件が成立した場合に親子関係の崩れたサブツリーを生成してしまいます。 innerHTML の前に document…

$("div").append("section") できないらしいので色々調べてみた

追記: jQ的には解決していませんが、素の JavaScript を使った回避方法がわかりました。IE8以下では、オンザフライで作成した要素に対して innerHTML すると謎要素が作成されてしまうといった現象がでるため、一度要素片を、DOMツリー( body とかね ) にぶら…

HTML5の新要素をinnerHTMLで生成できないバグを回避する

IE6〜IE8のinnerHTMLには問題が多く、そのひとつに、HTML5の新要素を食わせると悪夢のようなDOMツリーを生成するというものがあります。 var div = document.createElement("div"); div.innerHTML = "<section>section</section>"; document.body.appendChild(div); 上記のコー…