IEではsetAttributeが使えない

IEでは、setAttributeが使えないと言うことが判明。
setAttributeは、第1引数で指定したプロパティの属性を第2引数に書き換えるメソッドで、クリックしたらある部分を非表示にする(display:none)とかで使えるかと思ってたんですが、実はIEでは使えなかった。
この場合IEでは、代わりにstyle.cssText=””という記述にする必要があります。これはIE以外でも使えるのでこっちに統一せざるを得ませんね。

例:id:hogehogeの部分を非表示にしたいとき

<button id="detail_btn" onclick="javascript:displayNone(); return false;">
非表示にする
</button>
 
<div id="hogehoge">
ここが非表示になる
</div>

function displayNone の中身は

これが

document.getElementById("hogehoge").style.cssText = "display:none;";

こうなる

広告

document.getElementById("hogehoge").setAttribute("style","display:none;");

About: dacelo


Leave a Reply

Your email address will not be published. Required fields are marked *