プロが教える店舗&オフィスのセキュリティ対策術

お世話になります。

親ウィンドウからjavascriptにて子ウィンドウを開き、親ウィンドウが
閉じられたら子ウィンドウも閉じると言う処理をしております。
別サーバーにある画面を子ウィンドウとして開いた場合、閉じることができません。
これは、javascriptの仕様でしかたが無いのでしょうか?
それとも、別なやり方があるのでしょうか?

1)同一サーバーにある別サイト
 同一サーバーにある別サイトを子ウィンドウとして開いた場合、親ウィンドウから
 閉じることが可能
2)別サーバーにあるサイト
 別サーバーにあるサイトを子ウィンドウとして開いた場合、親ウィンドウから
 閉じることができない

環境
 Windows2000ServerSP4
 IIS5.0
 ASP+javascript

親画面
 http://pcxxx/siteP/sample.html
 同一サーバーの別サイトを開く場合
  win = window.open('http://pcxxx/siteA/sample.html', 'newwin');
 別サーバーのサイト
  win = window.open('http://pcyyy/siteB/sample.html', 'newwin');

どなたかご存知でしたらお教え下さい。
宜しくお願い致します。

A 回答 (2件)

javascriptでは別サーバにあるドキュメントにアクセスすることはセキュリティ上の制約によりできませんが、ドキュメントを表示しているウィンドウを操作することはできます。


つまり、単純に子ウィンドウをcloseするだけならnewwin.close()でできるわけです。
closeする前にドキュメントにアクセスする処理を何かしていませんか。スクリプトはそこでエラーを返し停止するのでcloseされません。
    • good
    • 0

javascriptには別サーバのページにアクセスできないとうセキュリティ上の制約が課せられていますので単純には無理です。



同じ、'newwin'に同一サーバのページを開いて(書き換えて)からならclose出来るかも。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!