[JavaScript] IE6,IE7のgetAttributeとsetAttributeについて

javascriptライブラリを作成していて、あれ動かない?と思うとこれが原因の事が未だにあるため、忘れないようにメモしておく。

IE6,7では、getAttribute と setAttribute を使用して、class 属性や style 属性などを操作できないバグ(IEの仕様)がある。

以下、一部の例を記載する。

element.setAttribute("class","○○○"); → element.setAttribute("className","○○○");
element.setAttribute("style", "○○○"); → element.style.cssText = "○○○";
element.setAttribute("maxlength", 5); → element.setAttribute("maxLength", 5);
element.setAttribute("readonly","○○○"); → element.setAttribute("readOnly","○○○");
element.setAttribute("for","○○○"); → element.setAttribute("htmlFor","○○○");
element.setAttribute("http-equiv","○○○"); → element.setAttribute("httpEquiv","○○○");
element.setAttribute("cellpadding","○○○"); → element.setAttribute("cellPadding","○○○");
element.setAttribute("cellspacing","○○○"); → element.setAttribute("cellSpacing","○○○");
element.setAttribute("rowspan","○○○"); → element.setAttribute("rowSpan","○○○");
element.setAttribute("colspan","○○○"); → element.setAttribute("colSpan","○○○");
element.setAttribute("usemap","○○○"); → element.setAttribute("useMap","○○○");

ライブラリはクロスブラウザを基本として作成しているため、この辺は注意する必要がある。

トラックバックURL

http://mashimonator.weblike.jp/mt/mt-tb.cgi/94

コメント投稿フォーム