人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

JavaScriptで質問です。
下記の関数で、大抵のブラウザでテキストの切り替えが出来るようになったのですが、NetScapeだけ、表示できません。
原因は何でしょうか?
※ちなみに、下記のソースのFireFoxをMozillaに変えても無理でした。

function insertText(area, value){
if (navigator.userAgent.indexOf("Firefox") > -1) {
document.getElementById(area).textContent = value;
}else{
document.getElementById(area).innerText = value;
}
}

●質問者: makocan
●カテゴリ:インターネット ウェブ制作
✍キーワード:Area firefox JavaScript Mozilla Netscape
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● Mook
●27ポイント

チェックするときの、文字列は Netscape だったでしょうか?

JavaScript は 大文字、小文字を識別するので NetScape だと一致しないと思います。


デバッグ時は、チェックの始めに

 alert( navigator.userAgent );

等で確認するのも有効な手段だと思います。


イヌでもわかるJavaScript講座 ブラウザバージョンの取得

◎質問者からの返答

一応は、判定は間違ってなかったと思います。

意図した条件分岐に処理は行ってるので。

うーん。。。


2 ● susie-t
●27ポイント

Netscape7.1で試しましたが、textContentもinnerTextも使えないようです。(というか、要素のプロパティとして存在していない)

Netscapeでも動作させるためには、innerHTMLを使うのが手っ取りばやいです。ただ、タグ等がエスケープされないので、innerTextと同じ挙動にしたい場合は以下のようにします。

<html>
<head>
<script>
<!--
function insertText(area, value){
 var elem = document.getElementById(area);
 elem.innerHTML = "&nbsp;";
 elem.firstChild.nodeValue = value;
} 
//-->
</script>
</head>
<body>
<div id="test"></div>
<input type="button" value="test"onclick="insertText('test', '<b>AAAA</b>');"/>
</body>
</html>

参考になれば幸いです。

ダミー:http://q.hatena.ne.jp/

◎質問者からの返答

解決しました!

ドモです!


3 ● Mook
●26ポイント

ブラウザのバージョンというよりは、JavaScript の方言の問題でしょうか。

下記では IE, FireFox, Netscape で動作しました。

<html>
<head>
<meta http-equiv="Content-Script-Type" content="text/javascript">
<script type="text/javascript">
<!---
function insertText(area, txtValue){
 document.getElementById(area).innerHTML = txtValue;
}
// --->
</script>
</head>
<body>
 <form name="myForm">
 <p id="myText">---</p>
 <input type="button" name="myButton" value="Click Me!" onclick="insertText( 'myText', 'Hi there!!' );">
</body>
</html>

実際の area にあたる部分が明示されていないのでなんともいえませんが、ブラウザによって、使えないプロパティもあるのでその辺りを確認してはどうかと思います。

Dynamic HTMLの基礎

mozila サポートされない DOM 関連プロパティ

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ