- ベストアンサー
Firefoxで表示できないのは何故でしょう?
お世話になります IE6、Operaでは表示できたのですがFirefoxでは表示できませんでした(><) 何か見落としがあるのでしょうか? <script language="javascript"> <!-- window.onload = function() { n=document.getElementById("div1").innerText; if(n == "a0"){ document.getElementById("img1").style.display = "block"; document.getElementById("img1").style.top = "100px"; document.getElementById("img1").style.left = "100px"; } if(n == "a"){ document.getElementById("img2").style.display = "block"; document.getElementById("img2").style.top = "100px"; document.getElementById("img2").style.left = "200px"; } } //--> </script> <div id="div1">a</div> <form action="test.cgi" method="post"> <input type="hidden"name="a" value="leap_day"> <input type="image" src="sample0.gif" id="img1" style="position:absolute;display:none;"> </form> <form action="test.cgi" method="post"> <input type="hidden"name="b" value="leap_day"> <input type="image" src="sample1.gif" id="img2" style="position:absolute;display:none;"> </form> n=document.getElementById("div1").innerText; if(n == "a0"){ } if(n == "a") { } を消すと表示はできるのですが・・・
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
n=document.getElementById("div1").innerText; ↓ n=document.getElementById("div1").innerHTML; こうしてみてください。
その他の回答 (2)
- MAN_MA_RUI
- ベストアンサー率41% (426/1024)
Firefoxの場合エラーコンソールを覗くと原因の分かる場合があります。 今回に限ったことじゃなく幅広いところで応用の利く発想なので一応。
お礼
回答ありがとうございます IEやOreraではブラウザの設定でエラー表示させる方法は知ってたのですがFirefoxでは知らなかったので参考になりました 見てみるとやはり例の部分がエラーになっていました(--;) ありがとうございます
window.onload で処理するよりも bodyタグに onLoad で呼ぶようにした方が確実だと思う。 window.onload だとfirefoxでは動作しないかもしれない (HTMLが描画される前に評価されてしまう可能性)
お礼
早速の回答ありがとうございます <script language="javascript"> <!-- function a() { (省略) //--> </script> </head><body onLoad="a()"> <div (省略) </form> としてみましたが残念ながら無理でした(><)
お礼
回答ありがとうございます innerHTMLに変更すると表示できました(^^) ありがとうございます TextとHTML同じようなものに思ってたけどやっぱ別物なのですね(><)