こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

FireFoxでJavascript「window.close()」が効きません。

別ウィンドウを開いて「閉じる」ボタンをクリックするとウィドウを閉じる、というレイアウトを作成しているのですが、

<A HREF="javascript:window.close()">ウインドウを閉じる</A>

では、firefoxでは動作しません。

情報を探してみて、以下のようなソースが有効なようなのですが、

<head>の中に以下を記述。
<script type="text/javascript" language="JavaScript">
<!--
function close_win(){
var nvua = navigator.userAgent;
if(nvua.indexOf('MSIE') >= 0){
if(nvua.indexOf('MSIE 5.0') == -1) {
top.opener = '';
}
}
else if(nvua.indexOf('Gecko') >= 0){
top.name = 'CLOSE_WINDOW';
wid = window.open('','CLOSE_WINDOW');
}
top.close();
}
-->
</script>

で、閉じるボタンを置きたい場所に

<A HREF="javascript:close_win()">ウインドウを閉じる</A>

が、ローカルで見ている範囲ですが、動作しません。
ページ内リンクみたいにページトップに戻るだけ。。。
ちなみにIEとネスケでは正常に動作しました。
どなたかお分かりになる方、ご教授願えませんか?
宜しくお願いします。

投稿日時 - 2007-02-19 12:51:36

QNo.2765613

すぐに回答ほしいです

質問者が選んだベストアンサー

ここのブログで詳しく書いてあります
http://neta.tbx.jp/textbox/blosxom/note/20050311close.html
http://masakiflash.weblogs.jp/top/2006/05/firefoxwindowcl_c696.html

投稿日時 - 2007-02-19 13:12:54

お礼

早速のご回答ありがとうございます。
紹介していただいたページは私も見ていたのですが、
新規に開くと(urlをコピペで移動など)、やはり作動しません。
要するに、
・「target=_blank」で開かれたページなら有効
・「onClick="window.open('URL')」で開かれたページなら有効
・普通に(新規に)開いたページでは無効
となり、「親ページでの開き方に依存する」という理解でよろしいのでしょうか?

投稿日時 - 2007-02-19 13:24:46

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

#1です
そうなんです。親ページの開き方に依存します。
これらのサイト読む限りでは何ともしようが無い仕様(バグだと思うのですがw)の様です。

投稿日時 - 2007-02-19 13:42:03

お礼

そうなんですね、やっとすっきりしましたw
ご回答ありがとうございました。

投稿日時 - 2007-02-19 14:22:15

あなたにオススメの質問