水 10/17
ちょっと書き留めておきます。
その1. IEの場合、DOMを使って動的にTBLタグを使う場合、TBODYタグを作ってあげないと表示されない。
1 2 3 4 5 6 | var tbl = document.createElement("table"); var tr = document.createElement("tr"); var td= document.createElement("td"); td.appendChild(document.createTextNode("バスでお出かけ楽しいな")); tr.appendChild(td); tbl.appendChild(td); |
↓
1 2 3 4 5 6 7 8 | var tbl = document.createElement("table"); var tbody = document.createElement("tbody"); var tr = document.createElement("tr"); var td= document.createElement("td"); td.appendChild(document.createTextNode("バスでお出かけ楽しいな")); tr.appendChild(td); tbody.appendChild(tr); tbl.appendChild(tbody); |
その2. IEの場合、colspanをsetAttibuteで設定する場合、colspanでなくcolSpanとしないとダメ(Sは大文字) 。
1 | td.setAttribute("colspan","2"); |
↓
1 | td.setAttribute("colSpan","2"); |
その3. Iframeのフレームの枠線を消す場合は、frameborderを0にすればよいが、IEの場合は、IframeをDOM で動的に作った場合、frameBorderにしないとダメ(Bは大文字)。
1 2 3 | var iframe = document.createElement("iframe"); iframe.src="http://example.com/hoge.html"; iframe.frameborder = 0; |
↓
1 2 3 | var iframe = document.createElement("iframe"); iframe.src="http://example.com/hoge.html"; iframe.frameBorder = 0; |
3つ目のやつは、ネット上からリソースが見つけられずはまった。
この記事へのトラックバックURL:
2007/10/17 水 at 16:42:17
TBODY大事ですよねぇ(^^;;
僕もはまったくちです。
最近はもうJavaScriptでのDOM操作はライブラリ経由か、あるいは直接HTMLベタ打ちにしてます。IEの挙動いちいち追ってられないので・・・
2007/10/17 水 at 17:28:38
基本的には、ライブラリでクロスブラウジング吸収してるんですが、そーもいかないケースも多々ありますね~。はまるのは必ずといっていいほどIEなんですけどね(^^;