EUCでBODY部にJavaScriptを書くとIE3でそこだけ化ける

[上に] [前に] [次に]
mura [E-Mail] 1998/05/17(日) 13:02:24
JavaScriptで場合分けしてメッセージの表示をしようと思ってるんですが、
IE3でひらがなや漢字など(記号・英数字以外)が化けちゃいます。
(ネスケ3、ネスケ4では問題なし。IE4は持ってないです。OSはWin95です。)


<HTML><HEAD>
<TITLE></TITLE>
</HEAD>
<BODY>
さいしょのメッセージ
<SCRIPT LANGUAGE=JavaScript>
<!--
document.write('★★★★でも');
// -->
</SCRIPT>
大丈夫だと思ってたんですが。
</BODY>
</HTML>


JavaScriptを有効にしていると
「さいしょのメッセージ★★★★でも大丈夫だと思ってたんですが。」
と表示されるはずです。

でも「でも」のところだけIE3はシフトJISとして解釈しているようで、
その2文字だけ化けています。(その後ろの「大丈夫」からは問題なし)

「★」はちゃんと出ます。★の代わりに英数字を入れてもOKです。
(1バイト目が半角カナのコードじゃないから?)
「でも」の後ろ(document.writeの中)に★を入れるとそっちの方は文字化けします。

TITLEやBODYにどんなにEUC英数字を入れても「でも」だけは化けたままです。
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=x-euc-jp">
を入れてもだめでした。

なんとか文字コードはEUCのままで、かつ「if(navigator....)」とかで場合分けせずに
IE3でもちゃんと表示する方法ってないでしょうか?
(なければ場合分けで書きますけど)

mura [E-Mail] 1998/06/26(金) 21:24:44
[[解決]]
なにやら1バイト目が16進数のA0より大きい文字を見つけると
それ以降が化けるようだというのはわかりました。
化けずに書くには、やっぱ場合分けしかないのかな?
ちょっと面倒ですが場合分けで書いてみることにします。


[上に] [前に] [次に]