• ベストアンサー

フレームのあるHPでプルダウンメニュー

上左右とフレームの切ってあるHPをビルダーで作っている者です。 似た感じの質問を過去ログから検索して読みましたが、質問させてください。 左フレームにプルダウンメニューを設置して、 プルダウンメニューをクリックすると 右メインページが切り替えれる様にしたいのです。 http://www.red.oit-net.jp/tatsuya/java/combobo2.htm←この様なプルダウンメニューを設置したいのですが、 フレーム切り替えのタグをどこをどういじっていいのかわかりません。 現在ローカルファイルで作成中で、フォルダに 上フレーム:flame1.htm(完成) 左フレーム:flame2.htm(←ここに設置したい) メインページ:1.htm 2.htm 3.htm 4.htm  と入っている感じです。 左フレーム↓ <script language="JavaScript"><!-- function myGo(){ mySelect = document.myForm.myMenu.selectedIndex; location.href = document.myForm.myMenu.options[mySelect].value; } // --></script> <form name="myForm"> <select name="myMenu" onChange="myGo()"> <option value="1.htm" >第1章 <option value="2.htm" >第2章 <option value="3.htm" >第3章 <option value="4.htm" >第4章 </select> </form> どこをどう直したらいいのか、是非お教え下さい。 よろしくお願いします。

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

  • ベストアンサー
  • osumitan
  • ベストアンサー率33% (102/307)
回答No.2

> location.href = document.myForm.myMenu.options[mySelect].value; この行が問題ですね。 このスクリプトが左フレームにあるなら、 「location」だと左フレーム自身を指してしまいます。 右フレームのlocationに対して行わないといけません。 parent.右フレーム名.location.href = … としてみてください。

funfun31
質問者

お礼

お礼が遅くなりすいません。 ご指摘の点を修正したら、ちゃんと設置できました! ありがとうございます。 新たな問題が…そちらの問題は また新規に質問という形で質問させていただきます。 ほんとありがとうございます。

その他の回答 (1)

  • yukaself
  • ベストアンサー率45% (22/48)
回答No.1

こんばんわ。フレームに使う場合は「ターゲット」のタグが必要になりますね。 ジャバスプリクトを使わなくてもできますよ^^ <form name="link"> <select onchange='parent.★フレーム名.location.href=this.options[this.selectedIndex].value'> <option style="background-color:背景色;color:文字色;">一番上の文字</option> <option value="1.htm" style="background-color:背景色;color:文字色">第1章 <option value="2.htm" style="background-color:背景色;color:文字色">第2章 <option value="3.htm" style="background-color:背景色;color:文字色">第3章 </select> </form> 上記の「フレーム名」という所にflame1.htmに設定した名前を入れてください。 これはindex.htmにフレームを設定しますよね。 たとえば上下2分割の場合のこういうタグの場合、 <html> <head> <titele>タイトル</title> </head> <frameset rows="160, *"> <frame src="flame1.htm" name="★フレームの名前"> <frame src="flame2.htm" name="shita"> </frameset> </html> ★は同じ名前(すきなの)で入れてください。 質問者さんがかかれているような、ジャバスプリクトを使った場合 http://lovepop.itigo.jp/Core/HP/TAG-SAMPLE/link/043.html こちらを参考に

funfun31
質問者

お礼

お礼が遅くなってすいません。 とても参考になりました。 フレームの定義をやっていないのが、よくわかり恥ずかしい次第であります^^;

関連するQ&A

  • 複数のプルダウンメニューの設置(左右フレーム)

    前回プルダウンメニューによる左右フレーム切り替えの質問をさせていただきました。 →http://oshiete1.goo.ne.jp/kotaeru.php3?q=1200405 申し訳ないですが、ここからまた新たに質問させてください。 上部(固定)、左フレーム(プルダウン設置)、右フレーム(メインページ)というページを作っています。 現在の状況はローカルのフォルダの中に ○上フレーム:flame1.htm(完成) ○左フレーム:flame2.htm(←ここに設置したい) ○右メインページ:1.htm 2.htm 3.htm(←1つ目プルダウン)4.htm 5.htm 6.htm(←2つ目のプルダウン) 7.htm 8.htm 9.htm(←3つ目のプルダウン)  と入っている感じです。 <HEAD>~<HEAD>部分 <script language="JavaScript"><!-- function myGo(){ mySelect = document.myForm.myMenu.selectedIndex; parent.main.location.href = document.myForm.myMenu.options[mySelect].value; } // --></script> <BODY>~<BODY>部分 <form name="myForm"> <select name="myMenu" onChange="myGo()"> <option value="1.htm" >第1章 <option value="2.htm" >第2章 <option value="3.htm" >第3章 </select> </form> ↑上記でひとつのプルダウンは設置できるのですが、 2つ目、3つ目のプルダウンの設置となると、 どこをどうしたらよいやらわかりません。 是非ご回答よろしくお願いいたします。

  • 複数のプルダウンメニューから指定フレームへ表示

    質問内容を検索してhttp://omedeta.okweb.jp/kotaeru.php3?q=1205107 から抜粋させていただきました。 funfun31様、ご回答された方々、まこと申し訳ございません。 ありがとうございます。 現状、上部(固定)、左フレーム(プルダウン設置)、 右フレーム上(表のサンプル表示)、 右フレーム下(メインページ) というページの構成でfunfun31様とほとんど同じです。 上フレーム(完成) 左フレーム(↓のJavaScriptを設置) 右フレーム上(右フレーム下へ表示する表の見方) 右フレーム下(ここにプルダウンメニューで選択した内容表示) 左フレームの内容 <HTML> <HEAD> <script kanguage=Javascript"> <!-- function myGo(myPullDown) {   var mySelect = myPullDown.selectedIndex;   parent.右フレーム下ファイル名.location.href = myPullDown.options[mySelect].value; </script> <body background="壁紙"> <form name="myForm"> 題名1<br> <select name="myMenu1" onChange="myGo(this)"> <option selected>選択 <option value="01.htm">01 <option value="02.htm">02 <option value="03.htm">03 </select> <br> 題名2<br> <select name="myMenu2" onChange="myGo(this)"> <option selected>選択 <option value="04.htm">04 <option value="05.htm">05 <option value="06.htm">06 </select> </form> </body> </html> どこが間違っているのかがわかりません。 現状選択しても右フレーム下に反応がありません。 知識不足で単純な見落とし、または根本的な間違いがあるかも知れません。 無知でまこと申し訳ございませんが 是非ご回答よろしくお願いいたします。

  • プルダウンメニューで選んだリンクを別窓で表示させたい

    こんにちは。 プルダウンメニューで選んでもらうと 選んでもらった日にちのところに飛ぶように作っています。 ★GO★を押してもらった日にちの日記を 別窓で表示させるにはどこに _blank を入れたらいいのでしょうか? よろしくお願いします○┓ペコリ <script language="JavaScript"><!-- function myGo(){ mySelect = document.myForm.myMenu.selectedIndex; location.href = document.myForm.myMenu.options[mySelect].value; } // --></script> <form name="myForm"> <select name="myMenu"> <option value="http://blog.livedoor.jp/***"> ■ブログTOP■ <option value="http://blog.livedoor.jp/01**" > *2/2の日記 <option value="http://blog.livedoor.jp/02**" > *2/3の日記 </select> <input type="button" value="★GO★" onClick="myGo()"> </form>

  • プルダウンから移動時のフレームの外し方

    こんにちわ。 今、上にプルダウンメニューがあり、下にリンク先ファイルを 表示する、上下のフレームページを作ってます。 この時、TOPページ(フレーム無し)やレンタルBBSの ページにも行けるようにしたいのですが、 上のフレームが残ってしまい、困ってます。 アドレスを記入する場所に target="top" と付け加えてみたけれど 上のフレームは残ったままです。 サンプルのscriptで【top.sita.location.href 】と 指定してるから、下のフレームにしか対応しないのでしょうか? 何処かを変更して、TOPやBBSに移動する時だけ フレームを無くし、全画面表示する方法はないでしょうか? ご存知の方、いらっしゃいましたら宜しくお願いしますm(__)m <SCRIPT language="JavaScript"> <!-- function myGo(){mySelect = document.myForm.myMenu.selectedIndex; top.sita.location.href = document.myForm.myMenu.options[mySelect].value; }// --></SCRIPT> <select name="myMenu"> <OPTION value="http://www.***">TOP <OPTION value="http://www.***">うさぎ <OPTION value="http://www.***">ねこ <OPTION value="http://www.***" target="top">BBS                     ↑ココに入れました </select> <input type="button" value="GO!" onClick="myGo()"> </form>

  • 複数のプルダウンメニューの作り方。

    ・Aリスト、Bリスト…とプルダウンメニューを複数含んだフォームを一つのhtmlに作りたいのですが、上手くいきません。 一つのフォームに一つのプルダウンメニューは上手くいくのですが、Javascriptを二つ並べると動かなくなります。 とりあえず関数名を重複しない様にしたらいいという事だけはネットで調べてわかりました。 今は、下記の状態になっています。 <script language="JavaScript"> <!-- function MENU(){ mySelect = document.myForm.myMenu.selectedIndex; location.href = document.myForm.myMenu.options[mySelect].value; } // --> </script> <form name="myForm"> <select name="myMenu" onChange="MENU()"> <option value="">A</option> <option value="a001.html">A001</option> <option value="a002.html">A002</option> <option value="a003.html">A003</option> </select> <select name="myMenu2" onChange="MENU()"> <option value="">B</option> <option value="b001.html">B001</option> <option value="b002.html">B002</option> <option value="b003.html">B003</option> </select> </form> ご指南の程宜しくお願いします。

  • プルダウンメニューのボタンの色を変えるには?

    自分のHPにプルダウンメニューにて曲を選択し、BGMが流れるようにしています。曲を流すことには、著作権等を含め問題ありません。 HPは、白と青を基調とした爽やかな感じにするため、スクロールバーも、バー自体は白、バーの枠とボタンの三角印のみ青に変更しています。 しかし、プルダウンメニューのボタンは通常のグレーに黒の三角です。 コレの色を変える方法、ありますか? タグはまずスクロールバーの色変更は、 <style type=text/css> <!-- body{ scrollbar-face-color:FFFFFF; scrollbar-highlight-color:FFFFFF; scrollbar-shadow-color:3333FF; scrollbar-3dlight-color:3333FF; scrollbar-arrow-color:3333FF; scrollbar-track-color:FFFFFF; scrollbar-darkshadow-color:FFFFFF; } --> </STYLE> 曲を流すタグは、 <SCRIPT language="JavaScript"><!-- function myGo(){ mySelect = document.myForm.myMenu.selectedIndex; if (mySelect == 0) return; myHTML = "bgm.html"; // myTitle = document.myForm.myMenu.options[mySelect].text; myFile = document.myForm.myMenu.options[mySelect].value; myURL = myHTML+"?title="+escape(myTitle)+"&file="+escape(myFile); window.open(myURL , "bgm" , "width=210,height=160"); } // --></SCRIPT> プルダウンメニューを置く場所に <FORM name="myForm"> <SELECT name="myMenu" size="1" onchange="myGo()"> <OPTION value="">BGM</OPTION> <OPTION value="song1.mp3">1曲目</OPTION> <OPTION value="song2.mp3">2曲目</OPTION> <OPTION value="song3.mp3">3曲目</OPTION> </SELECT> </FORM> としています。 ご存知の方、よろしくお願いします。

    • ベストアンサー
    • HTML
  • 新しい窓を開く記述がblankで上手くいかないです。

    <!-- function myGo(){ mySelect = document.myForm.myMenu.selectedIndex; top.MainFrame.location.href = document.myForm.myMenu.options[mySelect].value; } // --> 上のJavaScriptで、下のformで選択されたページをMainFrameに表示しています。 今回、選択したページを新しい窓で表示したいのですが、locationの 前にblankを書き加えても飛びません。 どの様に記述すればいいのでしょうか?ご指導よろしくお願いします。 <FORM name="myForm"> <select name="myMenu" onChange="myGo()"> <OPTION value="http://---1">◆1 <OPTION value="http://---2">◆2 <OPTION value="http://---3">◆3 </SELECT> </FORM>

  • HP上で流す音楽の音量を調節するには?

    自分のHPでBGMを流しています。 mp3・wavファイルなどで著作権の問題はありません。 BGM聞きたくない人のためにプルダウンメニューにて曲を選択すると小窓が出て自動演奏。小窓を閉じると演奏停止するようにしてます。 プレーヤーは表示させずに隠しています。 しかし、別々のところから音を借りてきたからか、曲によって初期の音量に違いがあります。 例えば、1曲目が音が小さいからスピーカーの音量を上げて、続けて2曲目を聴くと音が大きすぎる…このような感じです。 1曲ごとに初期の音量を+-設定する方法はありますか? 以下がタグです。 まず<HEAD>~</HEAD>に <SCRIPT language="JavaScript"><!-- function myGo(){ mySelect = document.myForm.myMenu.selectedIndex; if (mySelect == 0) return; myHTML = "bgm.html"; myTitle = document.myForm.myMenu.options[mySelect].text; myFile = document.myForm.myMenu.options[mySelect].value; myURL = myHTML+"?title="+escape(myTitle)+"&file="+escape(myFile); window.open(myURL , "bgm" , "width=210,height=160"); } // --></SCRIPT> プルダウンメニューの場所に、 <FORM name="myForm"> <SELECT name="myMenu" size="1" onchange="myGo()"> <OPTION value="">○○BGM○○</OPTION> <OPTION value="sound1.mp3">1曲目</OPTION> <OPTION value="sound2.mp3">2曲目</OPTION> <OPTION value="sound3.wav">3曲目</OPTION> </SELECT> </FORM> 小窓はbgm.htmlとし、JAVAスクリプトで共通にしてあります。 具体的には、 http://www.red.oit-net.jp/tatsuya/java/bgm3.htm こちらを参考にしました。 ご存知の方、よろしくお願いします。

    • ベストアンサー
    • HTML
  • フレームを使用した複数プルダウンメニュー

    こんにちは。 よくある質問もみたのですが「複数のプルダウンメニュー」「フレームを使ったプルダウン」というのはあるのですが、 フレームを使用して左フレームに複数プルダウン、そこで選んだものを右フレームに表示させるというのが見つかりませんでした。 「複数のプルダウンメニュー」もつくれますし、「別フレームに表示させる」こともできるのですが、 プルダウンを増やしたとたんに動きません。 ネームを変えてもみたのですがうまくいきません。 フレームを二つつくって <FRAMESET cols="35%,65%"> <FRAME src="n_menu.htm" name="manu">←こっちにプルダウンメニュー <FRAME src="n_main.htm"name="main">←こっちに表示 目次のhtmファイルで <SCRIPT LANGUAGE="JavaScript"> function openPage() { var list = document.forms[0].urlList; parent.frames[1].location = list.options[list.selectedIndex].value; } </SCRIPT> </HEAD> <FORM> <SELECT NAME="urlList" onChange="openPage()"> <OPTION SELECTED VALUE="cover1.htm">朝の歌 <OPTION VALUE="1.htm">1番目のページ <OPTION VALUE="2.htm">2番目のページ <OPTION VALUE="3.htm">3番目のページ </SELECT> </FORM> #上記をコピペして増やしてみた↓ <FORM> <SELECT NAME="urlList2" onChange="openPage()"> <OPTION SELECTED VALUE="cover2.htm">夜の歌 <OPTION VALUE="4.htm">4番目のページ <OPTION VALUE="5.htm">5番目のページ <OPTION VALUE="6.htm">6番目のページ </SELECT> </FORM> これだと2本目が表示されません。 どうすればいいか教えていただけないでしょうか?

  • 複数のプルダウンメニューの作り方。

    質問内容に不備があったため再度質問させて頂きます。 前回答えて下さった方には大変ご迷惑をおかけします。 非常に多くのものを奇麗に見せたいのでプルダウンメニューがいいと思い、作りました。 ・Aリスト、Bリスト、Cリスト…とプルダウンメニュー(メニューを選ぶとアンカー先に飛ぶようにしたい)を複数含んだフォームを一つのhtmlに作ったのですが、動作しません。 一つのフォームに一つのプルダウンメニューは上手くいくのですが、Javascriptを二つ並べると動かなくなります。 とりあえず関数名を重複しない様にしたらいいという事だけはネットで調べてわかりました。 今は、下記の状態になっています。 list.html <script language="JavaScript"> <!-- function MENU(){ mySelect = document.myForm.myMenu.selectedIndex; location.href = document.myForm.myMenu.options[mySelect].value; } // --> </script> <form name="myForm"> <select name="myMenu" onChange="MENU()"> <option value="">A</option> <option value="list.html#a001">A001</option> <option value="list.html#a002">A002</option> <option value="list.html#a003">A003</option> </select> <select name="myMenu2" onChange="MENU()"> <option value="">B</option> <option value="list.html#b001">A001</option> <option value="list.html#b002">A002</option> <option value="list.html#b003">A003</option> </select> </form> <a id="a001" name="a001"></a>A001<br> <a id="a001" name="a002"></a>A002<br> <a id="a001" name="a003"></a>A003<br> <a id="a001" name="b001"></a>B001<br> <a id="a001" name="b002"></a>B002<br> <a id="a001" name="b003"></a>B003<br> あと、このように同じhtml内でのリンクになる場合は、optionのvalueのlist.htmlを省いてもいいのでしょうか? 当方、Javascriptに関してはコピペでしか使えない程度の知識の人間です。 ご指南の程宜しくお願いします。

専門家に質問してみよう