• 締切済み

サブウィンドウへのリンク

いつもお世話になっています。 サブウィンドウへのリンクについて御質問です。 メインのページから、サブウィンドウへの直接のリンクは可能ですか? 例えばAのページからBのページ内に埋め込んであるサブウィンドウを呼び出す、というようなことです。 またサブウィンドウからサブウィンドウへリンクを貼ることは可能ですか?Aのページにあるサブゥインドウから、Bのページにあるサブウィンドウを呼び出したりしたいのです。 そもそもサブリンドウへリンクを貼ることが出来るのかどうかも良く分からない素人なので、分かりやすい御回答をよろしくお願いします。

みんなの回答

  • taseki
  • ベストアンサー率66% (155/233)
回答No.3

では、おそらく具体例を見たほうが解ると思いますので、 ------------------------- <html> <head> <script language="javascript"> var param = location.search; if (param) { alert("パラメーター : " + param); } </script> </head> <body> <a href="test.html?item1">LINK 1</a><br> <a href="test.html?item2">LINK 2</a><br> <a href="test.html?item3">LINK 3</a><br> </body> </html> ------------------------- これを「test.html」という名前のHTMLファイルに保存してください。 開くと、リンクが3つあり、それぞれクリックしてみてください。 <a href="… には、BページのURIの末尾に「?param」というようにクエスチョンマークに続けてパラメーターを付加します。 で、呼ばれるBページのほうでは、そのパラメーター部分(付加した部分)を判別しますが、上記のように location.search と書けば「?param」の部分が読み出せるわけです。 あとは、そのパラメーターに応じて、開くサブウィンドウを振り分ければいいと思います。 たとえば if (param == "item1") { subWin("file1.html"); } else if (param == "item2") { subWin("file2.html"); } else if (param == "item3") { subWin("file3.html"); } のように、Aページ(あるいは、どこでも良い)にてクリックしたリンクのhrefが ●「…?item1」 だったら 「subWin("file1.html")」を実行(file1.html をサブウィンドウで開く) ●「…?item2」 だったら 「subWin("file2.html")」を実行(file2.html をサブウィンドウで開く) ●「…?item3」 だったら 「subWin("file3.html")」を実行(file3.html をサブウィンドウで開く) という感じです。

  • taseki
  • ベストアンサー率66% (155/233)
回答No.2

それは target の指定では実現不可能だと思います(ちなみに「targetタグ」ではなく「target属性」ですね。)。 なぜなら、最終的な「詳細画面」はBページのスクリプトsubWinによって開かれるわけで、まだBページを開いていない=Aページを開いている状態では、目的の画面=ターゲットは、まだ存在していないからです。 Aページ内のリンクをクリックすると、 【1】Bページが開かれ、 【2】さらに「詳細画面」(サブウィンドウ)も開かれる というのを実現させたい、ということですよね? ここまで私の解釈あってますでしょうか? で、以下の方法で実現可能です。 まずBページに、以下のような仕掛けを埋め込んでおきます。 【自分(Bページ)が開かれたとき、URLパラメーターをチェックし、必要に応じてsubWinを呼び出す】 つまり言い換えれば「テーブル内の画像をクリックする」を自動的に行う仕掛けです。 あとは、AページからでもAページのサブフレームからでも、単に、Bページへのリンクにパラメーターを追加するだけです。 パラメーターはQUERY_STRINGS、つまりURLの最後に?~として付加し、上記仕掛けからは location.search で読み出します。

miwasukari
質問者

お礼

早々の御回答有り難うございます。 >Aページ内のリンクをクリックすると、 【1】Bページが開かれ、 【2】さらに「詳細画面」(サブウィンドウ)も開かれるというのを実現させたい、ということですよね? はい、全くその通りです。 簡潔にまとめてくださってありがとうございます。またとても分かりやすいご説明で、ちょっと仕組みが理解できました。 しかし、そうですか…何だかちょっと難しそうな作業なのですね。 >パラメーターはQUERY_STRINGS、つまりURLの最後に?~として付加し、上記仕掛けからは location.search で読み出します。 この文章が、私にとっては初めてのコトバばかりでしたので、ちょっと勉強してから出直した方が良さそうです。このタグの書き方を分かりやすく書いてあるようなサイトやオススメの本、などございましたら、御教示下さい。度々申し訳ございません。お願い致します。

  • 2NN
  • ベストアンサー率40% (143/353)
回答No.1

サブウィンドウ?Javascriptですか? 単純にフレーム内のページをリンクで呼び出すってことでしょうか? target属性を使えばできます? <a href="(リンク先URL)" target="(サブウインドウのフレーム名)"> 全くずれた回答だったらごめんなさい。

miwasukari
質問者

お礼

ごめんなさい、さらに補足です。Aページの中に入ってるのはインラインフレーム、Bページは、テーブルで区切った中に画像を入れて、その画像を<a href="javascript:subWin('ファイル名')">で呼び出しています。Aのインラインフレームから、Bの画像内のファイルをサブウィンドウで開きたいのです。

miwasukari
質問者

補足

早々の御回答、有り難うございます。そうです、Javascriptで呼び出しているんですが…。 ちょっと長くなりますが説明させて頂きます。 ネットショップをやっています。難しい言葉が分からないので、稚拙な表現になってしまいますが、お許し下さい。 サイトの構造は… Aのページの中にフレームが入っていて、そこに更新した情報を入れています。 Bのページに、いくつかフレームがあって、画像をクリックするとサブウィンドウが開き、詳細が見られるようになっています。 AのフレームからBのページに飛ぶには<a href="(BのURL)" target="_top">で、全画面表示でBのページに飛ぶことが出来ますよね。現に、そういう使い方を現在しています。 お伺いしたいのは、Aのフレームの中に記述した更新情報をクリックすると、Bのページに埋め込まれたフレーム?(htmlファイル)をサブウィンドウで開けるようにしたいのです。 こんな説明で御理解頂けますでしょうか…?言葉が足りなくて申し訳ありません。targetタグで何とかなれば、と思うのですが、上記の御回答だと、Bページに飛ぶことしか出来ませんでした。Aのフレーム内から飛ばそうとしているからでしょうか?サブウィンドウのフレーム名の入れ方が悪いのでしょうか? こんな説明で御理解頂けましたら、御回答頂きたく存じます。

関連するQ&A

  • ▲▲サブウィンドウから親ウィンドウ操作など▲▲JavaScriptに詳しいかた見てください。

    大変ややこしい質問をさせて頂きます♪いつもお答えくださる皆様に感謝致します☆ まず親ページとなる「index.html」があったとします、そこからサブウィンドウを開きます「sub.html」。サブウィンドウには3つのリンクが張ってあります。 1.123 2.456 3.789 例えば、3つのうちの2番「456」をクリックした再に、サブウィンドウ「sub.html」を閉じ、さらに親ページ「index.html」を新たに様をした「xmas.html」に変更する事は可能でしょうか?? サブウィンドウのリンクをクリックすることによって、サブウィンドウを閉じ、親ページを変更するといった具合です。 可能だと思い調べたのですが…。知恵足らずで理解できずにいます。おわかりになる方いらっしゃいました、是非タグなどもそえてお教えいただきたいと思っております。よろしくお願いします♪

  • サブウィンドウの親の位置

    こんにちわ。 メインウィンドウから、サブウィンドウを開くようになっています。 メインウィンドウが縦に長く(文章量が多い)、下の方のリンクでサブウィンドウを開いたときに、メインウィンドウの画面がページの上の方に移ってしまいます。 クリックした場所を維持したいのですが、調べてみたのですが、やり方がわかりません。 すみませんが、よろしくお願いします。 <script> <!-- function MM_openBrWindow(theURL,winName,features) { window.open(theURL,winName,features); } //--> </script> ▼メイン・リンク部分 <a href="#" onClick="MM_openBrWindow('info.html#1','info','width=380,height=500,scrollbars=yes,resizable=yes')">※1</a>

  • サブウィンドウの画像を入れ替える

    初心者です。よろしくお願いします。 親ウィンドウからテキストリンクでサブウィンドウを開きます。 サブウィンドウには、基本的に2種類の画像があります。 親ウィンドウのテキストリンクは3種類(A、B、C)あり、Aのリンクをクリックしたときには、サブウィンドウの <img src="images/x_01.gif" name="sozai01" alt="" width="469" height="142"> <img src="images/x_02.gif" name="sozai02" alt="" width="469" height="142"> の2つの画像をそれぞれ指定する同じ大きさの画像(images/a_01.gifとimages/a_02.gif)に替えたいのですが、どうしたらいいのかさっぱりわかりません。どなたか教えていただけますでしょうか?

  • リンクから飛ぶことで、他にもどんな質問しているかバレますか?

    いつもお世話になっております。 タイトル通りなのですが・・・。 質問者Aが、質問を投稿します。 回答者Bが、回答します。 その際に、Bは質問者欄のリンクからAのページに飛べますよね。 するとこれまでにAが回答したタイトルが出できます。(回答経験がある場合) これと同様に、Aがこれまでにどのような質問をしているのか分かるのでしょうか? 逆に、AがBのページに飛んで、Bがこれまでにどのような質問をしているのか分かるのでしょうか? 私はこれまでにプライベーとな質問でお世話になりました。 一つ一つの質問内容では、私個人を特定されることはないと思うのですが、リンクから飛ばれることで全ての質問内容を閲覧されているとすれば、その恐れを否定できません。 だったら投稿するな・・・というご意見はなしにして、どうかよろしくお願いいたします。

  • サブウィンドウを開くと親ウィンドウが上に戻ってしまう

    ページ途中のリンクからJavaScriptでサブウィンドウを開くとき、親ウィンドウが上に戻ってしまいます。 これをリンク位置でサブウィンドウが開くようにしたいのです。 どのようにすれば親ウィンドウが動かなくなりますでしょうか。 サブウィンドウ用のJavaScript function wopen1(){ window.open("aaa.htm","plain","scrollbars=yes"); } リンク側 <a href="#" onClick="wopen1()"> どうぞよろしくお願いいたします。

  • PHPのみでjavascriptと同じ動きができないでしょうか。

    PHPのみでjavascriptと同じ動きができないでしょうか。 やりたいことは以下の内容です。 1.メインページ(A) のリンクから サブウィンドウ(B) を別窓で開く。 2.サブウィンドウ(B) で、フォーム処理(修正登録)する。 3.サブウィンドウ(B) を閉じたら、メインページ(A) を更新する。 javascriptだと閉じるボタンに window.opener.location.reload(); とかでできると思うのですが これをphpのみで実装したいのです。 phpのみでjavascriptと同じことはできないでしょうか。

    • ベストアンサー
    • PHP
  • リンク先を開くウィンドウを指定できますか

    ページ構成としては、 A:メインページ B:メインページから開かれる新しいページ となっています。 メインページからリンクをクリックすると、 新しいウィンドウが開き、Bのページが表示されます。 ここで、Bのページのリンクをクリックすると、 Aのメインページ内にそのリンク先を開きたいのですが 可能でしょうか? よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • サブウィンドウを表示させたいのですが・・・

    こんにちわ。 ちょっとした(といっても、ワード文書1ページ分)説明をサブウィンドウで表示させたいのですが、 できません。 以下がソースです。 <メインウィンドウ> <HEAD> <SCRIPT LANGUAGE="JavaScript"> <!-- function winOpen(winName,url,W,H){ //サブウインドウオープン var WinD11=window.open(url,winName,'scrollbars=1,width='+W+',height='+H+''); WinD11.document.close() } //--> </SCRIPT> </HEAD> <BODY> <A HREF="javascript:function voi(){};voi()" onClick="winOpen('','link1.html',400,200)"> この文字をクリックすると説明ウインドウ1が開きます </A> </BODY> 何が間違ってるのかご指導いただけないでしょうか? よろしくお願いいたします。m(__)m

  • ウィンドウを閉じたときのイベント処理

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

  • サブウィンドウからのスタイルシートの切り替え

    お世話になります。カテゴリー違いであるかもしれませんがご容赦下さい。 javascriptについて勉強をし始めた所の初学者です。 ホームページビルダー14を使用してホームページを製作しています。 ページを開いたときに表示するサブウィンドウの切り替えボタン等で、閲覧して下さる方々にページの背景模様や文字色等を変更してもらえるようにメインウィンドウを操作できるようにしたいと考えています。背景や文字の要素ごとに切り替えられるセレクトメニューを設置したいのです。 具体的には、トップページを開いた時に http://www.sky.sannet.ne.jp/masapine/java_newwindow7.htmlのページのような形状のサブウィンドウが開くようにしたいと考えています。 背景模様(画像)の変更は、http://javascript.eweb-design.com/1302_bic.htmlのサイトに書かれているようなchBgImgで切り替える方法を取りたいと思っています。 文字色やリンク色はhttp://www.tagindex.com/javascript/page/color1.htmlのようなdocument.fgColorで切り替え、 その他の変更点等は、http://allabout.co.jp/gm/gc/23930/4/のようにスタイルシートで切り替える形を取りたく、これら3つのソースで設置したセレクトメニューをサブウィンドウに設置してメインウィンドウを切り替えるソースを教えて頂きたいと思うのです。つまり、個々の設置したいソースの内容には辿りついたのですが、それらをサブウィンドウから操作するソースが分からないという事なんです…。 背景模様の切り替えのセレクトメニューの表示には文字の代わりに画像を表示させたく、その際、セレクトメニューの各項目をマウスポイントした時に、画像表示が拡大表示される…というようなそのような事が可能であれば、そのソースも合わせてお教えいただきたく思います…。説明が下手でお恥ずかしい限りです…。 アドバイスを下さる方がいらっしゃいましたらよろしくお願い致します。