2011-08-04 20 views
0

foo.bar.com/parent.htmから提供されるページには、bar.com/child.htmを指すiframeが含まれているとします。同じドメインのiframeとクロスブラウザスクリプティング

parent.htmにあるスクリプトは、child.htmで定義された関数を呼び出すことはできますか?

が、これは動作するはずのように思えるparent.htmと同じドメインからchild.htm両方eminateので。アクセス拒否のメッセージが表示されていますが、理由を知りたいのですが?

おかげで、 ジョン

答えて

1

号には、例えば、ウィキペディアを見てください。

説明するためには、次の表は、URL「http://www.example.com/dir/page.html」に対するチェックのための典型的な成果 の概要を説明します。

http://v2.www.example.com/dir/other.htmlは - 失敗 - 異なる宿主(正確に必須と一致)

1

彼らはないは、ブラウザの立場

1

これは仕様によるものですから、同じドメインを検討しています。異なるクライアントにサブドメインを使用するホスティングサービスは、それらを安全に分離する必要があります。 http://en.wikipedia.org/wiki/Same_origin_policy

1

はい、両方のページにdocument.domain = 'bar.com'を設定します。その後、データのクロスフレームにアクセスすることができます。これは同じドメインでのみ有効です(例:あなたが設定することはできませんdocument.domainに「not-the-current-domain.com」

または私は通常、何をすべきか:

例えば、任意のサブドメインをストリップ(現在のルートドメインに document.domainを設定
document.domain = document.domain.replace(/.*?([^\.]+\.[^\.]+)$/, '$1'); 

関連する問題