Facebook Connect Javascript API を使用しようとしています。subdomain.example.com/foo/bar/baz/article.html に Facebook のログイン ボタンがあります。ボタンをクリックすると、Facebook のドメインのログイン ページが開きます。ログインすると、その子ウィンドウは subdomain.example.com/foo/xd_receiver.html に移動します。これは Facebook が提供するファイルで、元のウィンドウにアクセスしようとするドメインからスクリプトをロードするためのスクリプト タグが含まれています。そこから関数を呼び出します。
子ウィンドウと親ウィンドウは両方とも同じドメインにあるため、子ウィンドウは親のウィンドウ オブジェクトのプロパティにアクセスできると思います (場所だけでなく)。何故か出来ません。考え?
ドキュメントによると、xd_receiver ファイルは、ログイン ボタンが表示されているページから相対パス (「..」を除く) でアクセスできる場所にある必要があると書かれていますが、Firefox では絶対パスが機能すると書かれています。これは私が使用しているものです。xd_receiver ファイルがロードされているので、問題はないと思います。とにかくそのような制限が存在する理由を知っている人はいますか? ドキュメントは、理由を説明せずに「これを行う」と言うのが好きです。楽しい時間。