「onUnload」でイベント処理を記述すると、ページを移動したときにも処理が行われますが、ウィンドウを閉じたときだけ処理を行いたい場合のイベントはどのように記述すればよいでしょうか?
メインウィンドウからリンクをかけて、サブウィンドウを表示させ、そのサブウィンドウ内で何ページかリンクページを設定していますが、サブウィンドウ内でのページ移動中はそのままで、サブウィンドウを閉じてメインウィンドウに戻るときだけ、確認ウィンドウを1ページ表示させたいのです。
よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

<body onUnload="命令"> で出来たと思いますが(^^;)自信は無いです

    • good
    • 0

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

このQ&Aと関連する良く見られている質問

Qサブウィンドウから、親ページのリンクを操作し、自身は閉じるやり方

すいません。javascriptに詳しい方、教えて下さい。
今、親ページからポップアップで、サブウインドウを開いています。
やりたいことは、サブウィンドウにあるcloseボタンを押したら、
親ウィンドウを指定のページに移動して表示させ、サブウィンドウ自身は閉じる動作がしたいです。
調べてみたら、opener.location.hrefというのを使えばできるみたいなのですが、こういう記述で大丈夫なのでしょうか?
プレビューしてみたら、一応動いてくれているみたいですが、文法的にはどうなのでしょうか?
教えていただければ、ありがたいです。
以下にソースを記述します。

<a href="index.htm#F" onClick="opener.location.href='index.htm#F; return false;" javascript:window.close();">

Aベストアンサー

こんにちは

動いていますか?
『 " 』の位置が変ですし、『 ' 』も閉じ忘れてます
それらを直したとしても『 return false; 』してますのでwindow.close()の作動はしないような気がするのですが(return false;とwindow.close()の順番が逆)・・・
<a href="index.htm#F" onclick="window.opener.location.href='index.htm#F';window.close();return false;">
になるけどwindow.close();してしまうのでreturn false;はあまり必要ないです

>closeボタン
ということは
ボタン表示 <input type="button" value="close">
だとか
画像表示 <img src="***" alt="close">
にしてるってことですよね?

そちらのタグに直接『onclick="window.opener.location.href='index.htm#F';window.close()"』としてもできますよ(^^)
テキストの場合は<span>で囲んだり文字装飾したりしないといけないですけど・・・

こんにちは

動いていますか?
『 " 』の位置が変ですし、『 ' 』も閉じ忘れてます
それらを直したとしても『 return false; 』してますのでwindow.close()の作動はしないような気がするのですが(return false;とwindow.close()の順番が逆)・・・
<a href="index.htm#F" onclick="window.opener.location.href='index.htm#F';window.close();return false;">
になるけどwindow.close();してしまうのでreturn false;はあまり必要ないです

>closeボタン
ということは
ボタン表示 <input type="button" ...続きを読む

Q親ページを閉じたときにサブウィンドウも閉じたい

こんにちは。
Javascriptでわからないことがあります。
アルバムを作っていて、画像をクリックすると、サブウインドウが表示されて、大きな画像が見られるようなページを作りたかったので、ネットで見つけたものを記載しました。

HEAD部分に以下を記載しました。

<SCRIPT LANGUAGE="JavaScript">
<!--
function new_win6(){window.open("サブウインドウ","","width=300,height=200");
}
function win_close(){myWin.close();
}
//-->
</SCRIPT>

BODY内には以下を記載しました。

<a href="#" onClick="JavaScript:new_win6();return false"> </a>

無事、サブウインドウが開いてできたのですが、そのあと別のページにとんだり、ウインドウを閉じたときに、サブウインドウが自動的に閉じるようにしたいと思っています。

本やネットで色々調べてみたのですが、つまづいてしまいました。

BODY部分にこのようなソースを記載すればいいというものじゃないのですよね?
onload="win_open()" onunload="win_close()"

知らなすぎて申し訳ありませんが、ご教授願います。
よろしくお願いします。

こんにちは。
Javascriptでわからないことがあります。
アルバムを作っていて、画像をクリックすると、サブウインドウが表示されて、大きな画像が見られるようなページを作りたかったので、ネットで見つけたものを記載しました。

HEAD部分に以下を記載しました。

<SCRIPT LANGUAGE="JavaScript">
<!--
function new_win6(){window.open("サブウインドウ","","width=300,height=200");
}
function win_close(){myWin.close();
}
//-->
</SCRIPT>

BODY内には以下を記載しました。

<a href="#" ...続きを読む

Aベストアンサー

<head>内のスクリプトを、

<SCRIPT LANGUAGE="JavaScript">
<!--
function new_win6(){
myWin=window.open("サブウインドウ","","width=300,height=200");
}
function win_close(){myWin.close();}
//-->
</SCRIPT>

<body>タグを、

<body onUnload="win_close()">

にしてみてください。

改造した点は、子ウィンドウを開くときにそれにmyWinというIDをふった点(IDを振らないと、うまくいかないと思います)と、<body>の開始タグ内に「onUnload="win_close()"」のイベントハンドラを入れた点です。
ご質問の中にあるonLoadは要りません。 これは、ページが読み込まれた際に、自動的に処理を行いたいときに記述します。

一応、Windows MeのIE 6とNetscape 7、Opera 6.05で動作確認してあります。
うまく動かなかったらごめんなさい。

<head>内のスクリプトを、

<SCRIPT LANGUAGE="JavaScript">
<!--
function new_win6(){
myWin=window.open("サブウインドウ","","width=300,height=200");
}
function win_close(){myWin.close();}
//-->
</SCRIPT>

<body>タグを、

<body onUnload="win_close()">

にしてみてください。

改造した点は、子ウィンドウを開くときにそれにmyWinというIDをふった点(IDを振らないと、うまくいかないと思います)と、<body>の開始タグ内に「onUnload="win_close()"」のイベントハンドラを入...続きを読む

Qサブウィンドウからメインウィンドウにデータを送信する方法

宜しくお願いします。
メインウィンドウからリンクを貼り、そこをクリックしてサブウィンドウを出します。そのサブウィンドウに入力フォームを付けて、必要な情報を入力してもらい、送信ボタンを押すと、POSTで送信されて、元のメインウィンドウで送信内容が確認出来る様にしたいのですが、やり方が良くわかりません。
とある本を見て、『opener.closed』というのを使えば出来るかと思い試したのですが、URLをメインのウィンドウに送る事は出来ても、POSTのデータを送信する方法までわかりませんでした。
どなたかご教授の程、宜しくお願い致します。

Aベストアンサー

以下のような感じでどうでしょう?

(1)メインウィンドウに名前を付けておく。

<html>


<script type="text/javascript">
<!--
window.name="hoge"
//-->
</script>
</head>


(2)サブウィンドウで送信するときにtarget(=メインウィンドウのname)を指定する。
(送信したらサブウィンドウを閉じる)

<form action="~" method="post"
target="hoge"
onsubmit="window.close()"
>

Q親ウィンドウのボタンからサブウィンドウを閉じたいのですが・・・。

いつもお世話になっています。
JavaScript初心者です。
window.closeについて質問させて下さい。
メインウィンドウにある「next」という次のページに移るボタンをクリックすると、開かれているサブウィンドウを閉じる処理を実行したいのですが、window.closeを使えばいいということしか分からず、何をどこに書けば良いのか困っています。(サブウィンドウにも「閉じる」ボタンを作成していますが、親ウィンドウからも操作が出来るようにしたいと思っています。)

どうか教えていただけませんでしょうか。

ソースは次の通りです。
-----------------------------

//サブウィンドウの表示
<script language="JavaScript">
function sub(msg){
var page =window.open("", "HintPage","screenX=400,screenY=600,left=400,top=600,width=400,height=250,scrollbars=yes,resizable=yes");
page.document.open();
page.document.writeln("<html>");
page.document.writeln("<head><title>{test}</title></head>");
page.document.writeln("<body leftmargin=\"15\" rightmargin=\"15\" topmargin=\"20\">");
page.document.writeln("<h3>[ {test} ]</h3><hr><br>" + msg + "<br><br><hr><br>");
page.document.writeln("<div align=center>");
page.document.writeln("<input type=button value=close onclick=\"javascript:window.close()\"></div>");
page.document.writeln("</body>");
page.document.writeln("</html>\n");
page.document.close();
page.focus();
}
</script>
</HEAD>

//「next」ボタンの表示
<body>
<table cellpadding=3 cellspacing=5 align="right">
<tr>
<td bgcolor="#9999ff" align="right"><input type="submit" name="next" value="{nextBtn}" style="width: 140px; height: 20.5px;" onClick="setPname('{next}')" {disabled2}></td></tr>
</table>
</body>
----------------------------

どうぞよろしくお願い致します。
説明不足の点がありましたら補足させて頂きます。

いつもお世話になっています。
JavaScript初心者です。
window.closeについて質問させて下さい。
メインウィンドウにある「next」という次のページに移るボタンをクリックすると、開かれているサブウィンドウを閉じる処理を実行したいのですが、window.closeを使えばいいということしか分からず、何をどこに書けば良いのか困っています。(サブウィンドウにも「閉じる」ボタンを作成していますが、親ウィンドウからも操作が出来るようにしたいと思っています。)

どうか教えていただけませんでしょうか。

...続きを読む

Aベストアンサー

サブウィンドウはpageオブジェクトで扱っていますので、
page.close();
で閉じることができます。コレをボタンのクリックイベントで
呼び出すfunctionに記述しておけば閉じるはずです。
このときpageオブジェクトはsub()の中でのみ有効なので、
sub()の外側で宣言しておきます。

以下のような感じかな
<script language="JavaScript">
var page;//変数だけ宣言
function sub(msg){
page=window.open(略);
//略
}
//closeボタンのクリックイベント用
function childClose(){
page.close();
}
あとは<body>のなかでボタン作って呼び出せばできるはずです。
<input type="button" onClick="childClose()" value="close">

この回答では複数のサブウィンドウを扱うとか、サブウィンドウを
開く前に「close」押したらどうするとかは考慮してませんので
必要に応じて付け足してください。

サブウィンドウはpageオブジェクトで扱っていますので、
page.close();
で閉じることができます。コレをボタンのクリックイベントで
呼び出すfunctionに記述しておけば閉じるはずです。
このときpageオブジェクトはsub()の中でのみ有効なので、
sub()の外側で宣言しておきます。

以下のような感じかな
<script language="JavaScript">
var page;//変数だけ宣言
function sub(msg){
page=window.open(略);
//略
}
//closeボタンのクリックイベント用
function childClose(){
page.close();
}
あ...続きを読む

Q子ウィンドウを閉じるとき、親ウィンドウのテキストボックスにカーソルを移動したい。

子ウィンドウを閉じるとき、親ウィンドウのテキストボックスにカーソルを移動したい。(java)
<script>
function openChild(f){
window.open("child2.htm","_blank");
}
</script>
<form>
<input id="text1"><br />
<input id="text2"><br />
<input type="button" onclick="openChild(this.form)" value="子ウィンドを開く">
</form>

子ウィンドを閉じる
<input type="button" onclick="window.close()" value="閉じる">

親ウィンドウのテキストボックス(id="text2")にカーソルを移動したいのですが。

<input id="text2"><br />

Aベストアンサー

・ タブブラウザでないIEの場合ですが、

child2.htm
------------------------------------------------------------

<html>
<head>
<script language="JavaScript" type="text/javascript">
<!--
function closeThis() {
window.opener.document.getElementById("text2").focus();
window.close();
}
//-->
</script>
</head>
<body>
<form>
<input type="button" onclick="closeThis()" value="閉じる">
</form>
</body>
</html>


人気Q&Aランキング

おすすめ情報