京都Loveに地図を実装していくと、スムースに導入できたとおもったら、IEで動作しないことが判明した!
エラーは、この行で発生する
if (GBrowserIsCompatible()) {
HTMLのソースをコピーして、原因を探っていってわかったことは、文字コードをUTF-8からEUC-JPに変えていたことが問題であった。IE以外のブラウザーでは問題なかったのですが・・・。京都LoveはEUC-JPコードで作ってきたので、それで動かす方法はないものか調べてみたら、いいことがわかりました。
Google Mapを作る大元のスクリプトがあって、それはUTF-8で書かれていて、別の文字コードに設定してしまうと、ブラウザーによってはうまく読み取れないとのこと。うはっ、アスキー文字のスクリプトなのだから、読み取れないなんてありえんだろう!とIEに突っ込み入れたくなる。
そして、その解決方法として、「charset="utf-8"」を追加すれば良いとのこと。
HTMLソースを修正して確認してみると、おおおおーーー動いた〜〜。な〜んだ、簡単になおると思い、PHPのスクリプトを修正して動かしみたが、動かん・・・ (* ̄□ ̄*;
やはり、if (GBrowserIsCompatible()) { の行でエラーを起こすのだ。
京都Loveは、PHPでJavaScriptを含めたHTMLソースを作り出しているから、JavaScriptの読みこむ前に、エラー行に達してしまうのか???それなら、地図表示ようのPHPを作ってしまおうとしたが、これが全然動かないというのなのか???(う〜ん)
いろいろ試行錯誤しているうちに、原因がわかった!!!
ブラウザーの文字コードの設定を、UTF-8にすると、地図が表示されたのだ!!(おお)
んじゃ、全部UTF-8で書いてみたが、ブラウザーはEUC-JPで認識してしまう。
YahooはUTF-8で書かれているので、表示させてみると、UTF-8で認識している。
Yahooの文字コードの設定を書き写してみるが、やはりEUC-JPで認識してしまう。
これは、テストサーバー(Apache)のOUTPUTの文字コードが、EUCに設定しているからに違いない。
ちなみに、WebのApacheサーバーのOUTPUTの文字コードはと確認すると、なんと設定されていないではないか!
ということは・・・
HTMLソースをUTF-8に変換して、アップロードしてみると・・・おおお、UTF-8と認識して、ちゃんと動いた!
IEは、HTMLでの文字コードの設定は無視して、ソースの文字コードで判断しているみたいだ。
ということで・・・、京都Loveの文字コードを、EUCからUTF-8に変更することに・・・
ひぇぇぇぇ、大変だ〜〜〜
エラーは、この行で発生する
if (GBrowserIsCompatible()) {
HTMLのソースをコピーして、原因を探っていってわかったことは、文字コードをUTF-8からEUC-JPに変えていたことが問題であった。IE以外のブラウザーでは問題なかったのですが・・・。京都LoveはEUC-JPコードで作ってきたので、それで動かす方法はないものか調べてみたら、いいことがわかりました。
Google Mapを作る大元のスクリプトがあって、それはUTF-8で書かれていて、別の文字コードに設定してしまうと、ブラウザーによってはうまく読み取れないとのこと。うはっ、アスキー文字のスクリプトなのだから、読み取れないなんてありえんだろう!とIEに突っ込み入れたくなる。
そして、その解決方法として、「charset="utf-8"」を追加すれば良いとのこと。
HTMLソースを修正して確認してみると、おおおおーーー動いた〜〜。な〜んだ、簡単になおると思い、PHPのスクリプトを修正して動かしみたが、動かん・・・ (* ̄□ ̄*;
やはり、if (GBrowserIsCompatible()) { の行でエラーを起こすのだ。
京都Loveは、PHPでJavaScriptを含めたHTMLソースを作り出しているから、JavaScriptの読みこむ前に、エラー行に達してしまうのか???それなら、地図表示ようのPHPを作ってしまおうとしたが、これが全然動かないというのなのか???(う〜ん)
いろいろ試行錯誤しているうちに、原因がわかった!!!
ブラウザーの文字コードの設定を、UTF-8にすると、地図が表示されたのだ!!(おお)
んじゃ、全部UTF-8で書いてみたが、ブラウザーはEUC-JPで認識してしまう。
YahooはUTF-8で書かれているので、表示させてみると、UTF-8で認識している。
Yahooの文字コードの設定を書き写してみるが、やはりEUC-JPで認識してしまう。
これは、テストサーバー(Apache)のOUTPUTの文字コードが、EUCに設定しているからに違いない。
ちなみに、WebのApacheサーバーのOUTPUTの文字コードはと確認すると、なんと設定されていないではないか!
ということは・・・
HTMLソースをUTF-8に変換して、アップロードしてみると・・・おおお、UTF-8と認識して、ちゃんと動いた!
IEは、HTMLでの文字コードの設定は無視して、ソースの文字コードで判断しているみたいだ。
ということで・・・、京都Loveの文字コードを、EUCからUTF-8に変更することに・・・
ひぇぇぇぇ、大変だ〜〜〜


