• 締切済み

setAttributeによる画像の差し替え

DOM Scriptingで、setAttributeによる画像の差し替えをしたいのですが、意図どおりに差し替えができるブラウザと、できないブラウザがあります。ブラウザのバージョンなど詳細はまだ確認しきれていないのですが、比較的新しいOSとブラウザで差し替えができない傾向があります。以下のようなかたちで行っているのですが、新しい環境だとsetAttributeが使えない、といったことがあるのでしょうか。 【HTML】 <img id="test" src="off.jpg" width="200" height="100" alt="test" /> 【JavaScript(DOM Scripting)】 var test = document.getElementById("test"); test.setAttribute("src","on.jpg");

みんなの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.3

挙動がおかしいときはfirefoxのfirebugかchromeのツールのjavascriptコンソールで エラー状況を確認するとよいですよ

furnace
質問者

補足

度々、ご回答をいただき、ありがとうございます。 Chromeのjavascriptコンソールを試してみました。しかし、今回の問題に関連する点については検出されなかったようです。しかし、よく確認してみたいと思います。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

はて、そうですか? idの指定がまちがっているとか、function名をidで宣言している「test()」 としているとか、根本的なミスだったりしませんか? <html> <head> <script> function testfunc(){ var test = document.getElementById("test"); test.setAttribute("src","on.jpg"); } </script> </head> <body> <p> <img id="test" src="off.jpg" width="200" height="100" alt="test"> <input type="button" value="go!" onclick="testfunc()"> </p> </body> </html>

furnace
質問者

補足

ご回答いただき、ありがとうございます。同じページで多数のjsファイルを読み込んでいるので、干渉?していることはあるかもしれません、調べてみます。一方で、ご指摘のようなミスの場合、動作する環境が複数存在する(XP Pro SP3 / IE8、Chrome、Firefox、Opera、Mac OSX 10.8.4 / Safari、iOS 6 / Safariなど ※細かいバージョンは今はわかりません。)ことは、考えにくいのでは?とも思いました。バグを調べるためのjsを用意して、今、問題の環境にいますが、それ自体が動作せず困っています。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

ざっと試しましたが特に問題なさそうです どのOSとブラウザの組み合わせでダメだったか例示してください

furnace
質問者

補足

Windows 7 Home Premium(※関係ないかもしれませんがネットカフェ環境です。) ・IE 10.0.9 ・Firefox 4.0 ・Google Chrome 32.0.1700.107 m Mac OSX 10.7.5 ・Safari 5.1.7 iOS 7.0.4 ・Safari 7.0 Mobile 動作ができないのは今のところ上記の環境です。

関連するQ&A