こんな場合はこの記事を見てね!
そのものずばり!の内容じゃなくてもヒントになるはずです♪
ファイルをアップロードしようと思ったら「アクセスが拒否されました」
ウインドウをリサイズ、移動しようとしたら「アクセスが拒否されました」
form部品の初期値を取得したい、初期値に戻したい
form部品すべてにアクセスしたい
配列の値を削除したい
配列の値を並び替えたい
javascriptでtry-catch!
IEでclass名を取得したい
IEでonclick属性をセットしたい

2006年10月25日

IEでのgetAttribute,setAttributeのバグ

DOMでオブジェクトを特定したり、変更するのに使用するgetAttribute、setAttributeメソッドですが、一部IEにバグがあります。
以前散々悩んだので書いておきます。

たとえば、class名を取得したいとき、
element.getAttribute("class");だと、IEでは取得できません。
IEの場合には
element.getAttribute("className");

getAttribute("String")のStringには属性名がくるので、実際にはclassが正しいのですがIEのバグです・・・

また、同様に
element.setAttribute("style", "color: #ffffff;");もIEではセットできないので、
element.style.cssText = "color: #ffffff;";

とする必要があります。

さらに、onclick属性に対しても
element.setAttribute("onclick", "newHandler();");ではセットされずに、newHandler()が呼ばれません。
element.setAttribute("onclick",new Function("newHandler();"));

とする必要があります。

もう、これに気づくまでなかなか大変でした。
と思ったら、
http://nanto.asablo.jp/blog/2005/10/29/123294がとても参考になります。

ちょっと使えるぞ♪と思ったらクリックして頂くと励みになります。ビジネスブログ100選
posted by junko at 15:06 | Comment(1) | TrackBack(0) | getAttribute,setAttribute
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。