3流プログラマのメモ書き

元開発職→社内SE→派遣で営業支援の三流プログラマのIT技術メモ書き。 このメモが忘れっぽい自分とググってきた技術者の役に立ってくれれば幸いです。(jehupc.exblog.jpから移転中)

IEでGoogleカレンダー埋め込みサイトが正常に表示されない

サイトにGoogleカレンダーを埋め込んでるんですが、IEでページのリロードをするとGoogleカレンダーが表示されないという現象が発生しました。

Firefox,Chrome,Opera等では発生していません。

いろいろ調査したんですが、多分Google側が修正を加えたことで起こっているんじゃないかと思います。

埋め込みページを初回表示するときは正常に表示されます。(それで稀にエラーになることがありますが。。。)

ページを更新すると確実に表示されません。その際、以下の様なJavaScriptのエラーが発生します。

Web ページ エラーの詳細

ユーザー エージェント: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; MDDS; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E)

タイムスタンプ: Wed, 4 Jul 2012 06:19:20 UTC

メッセージ: 'gapi.config' は Null またはオブジェクトではありません。

ライン: 126

文字: 216

コード: 0

URI: https://www.google.com/calendar/xxxxxxxxxxxxxxxxxxxxxxembedcompiled__ja.js

メッセージ: オブジェクトでサポートされていないプロパティまたはメソッドです。

ライン: 10

文字: 21

コード: 0

URI: https://www.google.com/calendar/embed?src=xxxx@group.calendar.google.com&ctz=Asia/Tokyo&gsessionid=OK

クッキーの受け入れやキャッシュの無効化等色々試したんですが、ダメでした。

こちら側ではどうしようもないので、とりあえず暫定的な方法を取ることに。。。

初回表示は正常に行くことから、[表示されない場合はここをクリック]みたいなボタンを作成し、埋め込みページにリダイレクトするコードを埋め込んだページにリダイレクトするようにしました。

こんな感じです。

●カレンダー埋め込みページ(main.html)

</span></a></span>Untitled<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">

http-equiv="Content-Type" content="text/html; charset=UTF-8">

.....

type="button" value="表示されない場合はここをクリック" onclick="location.href='back.html';" />

.....

●back.html

type="text/javascript">

GoogleにはさっさとIEでも表示できるように修正して欲しいもんです。。。

追記:

2012年10月現在は直っているようです。(この現象が起きたのは2012/6下旬です。)