*1  Amazon wishlist の公開 は IE6 だとエラーになってました

先日、Amazon の Wishlist を公開することを始めた。これは
<script language="JavaScript" src="http://..." > </script>
のようにして、src 側で document.write('....'); を出力する cgi を読み込んで表示するようにしたのだが、Firefox では動いていたものの、今日 IE6 で試してみたら表示時にエラーになってしまった。誰か教えてくれればいいのに(他力本願)。

他の部分で同様に document.write(); しているものは問題なく動いているようで、この Amazon wishlist の部分だけを削ってみるとエラーも消える。はて何が違うのだろうと見てみると、呼び出し元(この日記)ページが euc-jp なのに対して、この javascript は utf-8 出力なのが問題のようなのであった。試しに javascript を吐く cgi を euc-jp にしてみたらエラーが収まって正しく表示される。IE6 だと異なる文字コードの JavaScript を読み込むとエラーになることがあると言うことのようだ。ちなみに JavaScript 出力側は HTTP ヘッダできちんと
Content-Type: text/javascript; charset=utf-8
と出力しているのは言うまでもない。

*2  script 要素に charset 属性を指定する

しかしこれでは困るケースもあるだろうと Google で色々見てみたところ、どうやら script 要素に charset 属性を明示的に指定すれば解決するらしい。と言うことで
<script language="JavaScript" charset="utf-8" src="http://..." > </script>
のように書いたら IE6 でもとりあえず問題無く表示されるようだ。当面はこれで良しとしておく。そもそもこの日記自体を euc-jp で運用する必然性もそろそろ無くなってきてはいるんだけど。

( Permalink | Comments (0) | tags: programming  )
JavaScriptのファイルを作り、他のサイトから読んで出力 みたいな処理をや...
Comments

Please write your comment. email address won't appear. Cannot use any HTML tags in comment.
コメントをお書き下さい。メールアドレスは公開されません。 またHTMLタグは利用できません。
Name   E-mail   URL
Comment

About W.W.Walker

World Wide Walker は yoosee による blog です。PDA, Web・サーバ技術, 美味しい食べ物などの話題を取り上げています... read more

このエントリーのブックマーク

Monthly Archives

Select Month to read