FC2ブログ

canvas 型アプリの画面リロード注意点

facebook のcanvas型アプリの場合、一般的な方法では
リロードできないこともあるらしいので、メモってみました

画面のリロードを
javascript で行うには
window.location.reload() が一般的

でも、これだと
window は facebook の枠内に表示されている
内部フレームを指してしまい、画面全体リロードはできない

画面全体を指すウィンドウオブジェクト top もあるけど
これもダメ
window.top.location.reload()
top.location.reload()

画面全体のリロードを行おうとしても
facebook により top オブジェクトにアクセスできないようになっているのでNG
さらに、ブラウザの仕様で
内部フレームから歩かのウィンドウオブジェクトにアクセスできないこともあるのでダメ
top.location.href="ジャンプ先URL"
これもダメ

現在確認できている成功例は
window.open("ジャンプ先のURL","_top")
として
ターゲットを画面全体としてURLを開くように指示すること

リロードの場合
ジャンプ先のURLは
自分自身のURLを指定するので
http://apps.facebook.com/アプリID
となります


window.top.open("URL")
だと
topへのアクセスが失敗するのでダメでした
スポンサーサイト



テーマ : プログラミング
ジャンル : コンピュータ

コメント

非公開コメント

最新記事
検索フォーム
GREEハコニワ攻略サイト
リンク
カテゴリ
月別アーカイブ
フリーエリア
最新記事
FXプライムレート
最新コメント
最新トラックバック