IEのimg要素のsrc属性の仕様に萎えた
IEで下記のようにsrcに画像へのurlを代入するとwidthとheightが勝手に入る。
var div = document.createElement('div'); var img = document.createElement('img'); img.src = 'photo1.jpg'; div.appendChild(img); alert(div.innerHTML);
結果
<IMG id=img3 height=113 src="photo1.jpg" width=150>
正直げんなりした。
下記のようにremoveAttributeで取り除いてやる必要がある。
var div = document.createElement('div'); var img = document.createElement('img'); img.id = 'img3'; img.src = 'photo1.jpg'; img.removeAttribute('width'); img.removeAttribute('height'); div.appendChild(img); alert(div.innerHTML);
結果
<IMG id=img3 src="photo1.jpg">
IEは属性に値を代入すると勝手に他の値を変更する事がある。
JavaScriptでHTMLを生成する場合に他のブラウザと結果が違ってしまう。
ちなみにIE8でも直ってない。。