• 締切済み

親ウィンドウから子ウィンドウのURLを取得する方法

openメソッドで開いた子ウィンドのURLを親ウィンドウから取得することは できますか? 子ウィンドウで色々なページに移動し、ある時点で表示されている 子ウィンドウのURLを親ウィンドウで取得したいのです。 以下の様なソースを書いてみましたが駄目でした。 var child; function OpenWindow() { child = open("http://xxx.yyy.zzz/", ""); } function GetChildURL() { var child_url = child.location.href; }

みんなの回答

回答No.2

var func = new Array(); function GetChildURL() { cnt = 0; for( i in child ) { func[cnt]=i+"="+child[i]; alert(func[cnt]); cnt++ } } ↑このようにやれば、childオブジェクトで利用できる プロパティ(iにプロパティ名が入りchild[i]にその値が入ります)が確認できると思います。(多分) 子ウィンドウで違う所へリンクしてしまうと、 もう他のウインドウからは、そのURLを取得するのは 難しいような気がします。 子ウィンドウのリンク時に、親ウィンドウの変数にリンク先の情報を代入することはできないでしょうか? 例えば、親ウィンドウ側で var url; などと宣言しておき、子ウィンドウ側でリンク時に opener.url="リンク先"; とやるなど。 この場合、子ウィンドウに表示されるリンクのある URLすべてにこのプログラムを書き込まなければなりませんが...。

logique
質問者

お礼

参考になりました。 やはり難しいようですね。 どうもありがとうございました。

noname#8333
noname#8333
回答No.1

JavaScriptには詳しくないので質問の意味がよく分かりませんでした。 「子ウィンドのURLを親ウィンドウから取得」というのは、 「子ウィンドウにあるリンクを押す→リンク先を親ウィンドウに表示させる」ということですか? 全然違っていたらごめんなさい。 プルダウンメニューでよければ、こんなの見たこと有りますけど...。

参考URL:
http://www.kz-island.net/java/script/navi.htm
logique
質問者

お礼

ありがとうございます。 私の質問文の書き方があまりよくありませんでしたね。

関連するQ&A

  • 親、子、孫のウインドウを同時に表示するのは?

    親と子のウンドウを同時に開くのは 親のファイルに以下のように書けば <HEAD> <SCRIPT LANGUAGE="JavaScript"> <!--// function openWindow() { window.open("","windowname"); } //--> </SCRIPT> </HEAD> <BODY> <A HREF="ko.html" onClick=openWindow() TARGET="windowname">子ウインドウ</A> </BODY> 出来るんですが、子のファイルに同じように書くと 子のウインドウが孫に変わってしまいます。 親、子、孫を同時に表示するのには、どうすればよいか、よろしくお願いします。

  • フォルダ名の取得方法

    お世話になります。 location.href="//xxx/yyy/zzz/index.html" のとき、 htmlName = location.href.substr(location.href.lastIndexOf("/")+1); で、htmlName ='index.html' と、なりますが、 htmlName ='zzz' を取得する方法はないものでしょうか。 よろしくお願いいたします。

  • 親ウィンドウのURL

    親ウィンドウからサブウィンドウをクリックイベントで表示させた場合に、サブウィンドウ側で呼びだした親ウィンドウのURLを取得することはできるでしょうか? 質問1 サブウィンドウをオープンする際に、GET変数なしでそれ(親ウィンドウのURL取得)がサブウィンドウ側でできるかどうか? 質問2 質問1の回答がYESの場合→具体的な取得方法 質問1の回答がNOの場合→GETで親ウィンドウのURLを取得する以外に方法はないか? 以上宜しくお願いいたします。

  • リモコンウインドウからの親ウインドウ操作

    親ウインドウからリモコンウインドウを開き、リモコンウインドウのリンク先を親ウインドウに表示しようとしています。 親ウインドウは2つのインラインフレームが存在し、そのインラインフレーム内にリモコンウインドウを開くためのリンクがあります。 そのインラインフレームには以下の記述をしてリモコンを表示させています。 function navi_win() { self.window.name="main" w = window.open('', 'Remocon', 'width=150,height=300,scrollbars=yes'); if (w != null) { if (w.opener == null) {w.opener = self;} w.location.href = 'remocon.html'; } } <a href="javascript:navi_win()">リモコン</a> これにより開いたリモコンでは以下の記述により親ウインドウに表示させようとしています。 function ctrl_wind(url) { opener.location.href = url; } <a href="javascript:ctrl_wind('hoge.htm')">hoge</a> この場合、hoge.htmlはインラインフレーム内に表示されてしまい、親ウインドウ全面にて表示はできませんでした。 この場合、どのように記述するのが良いでしょうか。

  • openで開いた子ウィンドウで表示されているソースの一時保存先とファイル名の取得

    openメソッドでURLを指定して子ウィンドウを開きます。 この時、子ウィンドウで表示されているURLのソースは、 一時ファイルとしてどこかに保存されていると思うのですが、 その保存先及びファイル名を親ウィンドウから取得することは 可能でしょうか。 よろしくお願い致します。

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

    子ウィンドウを閉じるとき、親ウィンドウのテキストボックスにカーソルを移動したい。(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 />

  • HTAで,親ウインドウを閉じると同時に子ウインドウも閉じる

    HTAを使っています。 *.htaのファイルにjavascriptを下記のとおり書いています。 目的は,親ウインドウで「閉じる」というボタンを押すことで 親ウインドウを子ウインドウを閉じるという動作をさせることです。 概ね上手く動きますが,子ウインドウが既に閉じられている状況で実行すると,「リモートサーバマシンが存在しないか,利用できません。」とエラーになります。 WINDOWS2000では問題無く動きますが,XPだとエラーが表示されます。 どうすれば,子ウインドウの状況によらず正常に動作するでしょうか? ########################################################## <input type="button" value="終了" onclick="closeWindow()" class="tukuru"> var subWin=""; //subWinをグローバル変数として宣言 function closeWindow(){ item1.style.display=""; setTimeout("end()",2000); } function end(){ if ( subWin.closed == false ) {; if(subWin.name+''=='OpenWindow'){; subWin.close(); }; }; window.close(); }

  • ウィンドウを閉じる

    親ウィンドウから子ウィンドウを呼び出し、そこから親ウィンドのURLを操作するために、子ウィンドのほうから onClick="returnPage()" で<head> 内のJavascriptを呼び出しているのですが、その際にもうひとつのFunction, "windowClose()" を足して、子ウィンドウから親URLを操作すると同時に子ウィンドウを閉じたいのですが、どのようにすればよいのでしょうか? 

  • 子ウィンドウを開くときに、親ウィンドウ(自分)を警告なしで閉じる。

    http://oshiete1.goo.ne.jp/kotaeru.php3?q=805336 の続きというか、同じことなのですが、 以下のJavaScriptで、子ウィンドウが開かれるのですが、この際に開いた親ウィンドウを閉じたいのですが、普通に閉じると警告が出てしまいます。 警告なしで、子ウィンドウを開き、親ウィンドウを閉じる方法があれば、教えてください。 <script language="JavaScript"><!-- function MenuWindow(){ var bname = navigator.appName; var bversion = navigator.appVersion; var spchr = ";"; var bverS = bversion.split(spchr); var blsr = bverS[1]; var spchr = " "; var btype = blsr.split(spchr); var bcat = btype[1], bver = btype[2]; if ((bcat.indexOf("MSIE")<0)||(bver<5.0)) { res = window.alert("本プログラムは Internet Explore 5.0 以降の"+ "ブラウザ以外では動作しません。"); window.close(); } else { //location.href="menu.html"; var indexW; var swidth=screen.availWidth; var sheight=screen.availHeight; var wwidth=swidth*1.0; var leftpos=(swidth-wwidth); var wheight=sheight*1.0; var toppos=(sheight-wheight); window.resizeTo(wwidth,wheight); window.moveTo(leftpos,toppos); window.focus(); indexW = window.open("menu.html","",'resizable=yes,top=0,left=0'); indexW.resizeTo(swidth, sheight); //location.href="#"; } return true; } //--></script> </head> <body onLoad="MenuWindow()"> </body>

  • 親ウインドウのURLの取得

    やりたいことは、サブウインドウを開いた時に親ウインドウのURLを取得したいのですが、下記では取れませんでしたので質問させていただきました。 document.referrer