![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_01.png?5a7ff87)
以下のプログラムですが!
仕様が二分割の縦分割フレームが特徴です。
左側フレームにリンクタグがあり、そのリンクタグをクリックすると、右フレームに
HPが観れるようになっています。
しかし、プルダウンメニューのYahooをクリックしたらakkotyan.html、は左フレームになぜか
出てきてしまって困っています。
それともう1つ、プルダウンメニューのhouyhnhnmsをクリックしても何もフレームに出てこなくて無反応です?
そのほか
「クリックで動くプログラ」と「知恵袋 竹島問題」はちゃんと右フレームに出てきて
問題ありません。
プルダウンメニュータグのHPを右フレームに出すにはどうしたらできますか!?
宜しくお願いします。
--------------------------------------------------------
左フレーム
<html>
<head>
</head>
<frameset cols="26%,*">
<frame src="left.html"name="menu">
<frame src="pronagare.html"name="contents">
</frameset>
<html>
-------------------------------------------------------
右フレーム
<html>
<HTMl>
<HEAD>
<TITLE>プルダウンメニューのHPを右フレームへ表示したい</title>
<script>addEventListener('load',function(ev){
document.forms['jump'].elements['to'].addEventListener('change',function(ew){
var map = {
yahoo: './akkotyan.html',
houyhnhnms: 'http://google.com/search?tbm=isch&q=houyhnhnms'
};
var url = map[ew.target.value];
if (url) window.location = url;
},false);
},false)</script>
<body>
<form name=jump><select name=to>
<option value='' selected>-</option>
<option value=yahoo>Yahoo</option>
<option value=houyhnhnms>Houyhnhnms</option>
</form>
</select>
<P>
<a href="pronagare.html"target="contents">クリックで動くプログラム</a><br>
<a href="takesima.html"target="contents">知恵袋 竹島問題</a><br>
</body>
</html>
No.2ベストアンサー
- 回答日時:
別フレームを操作するなら
誤: window.location = url;
正: window.top.frames['contents'].location = url;
ただし昨今はフレームについて厳しくなりましたので、
上記の処理を行うと場合によってはセキュリティエラーが発生する危険性もあります。
参考) https://developer.mozilla.org/ja/docs/HTTP/X-Fra …
余計なお節介ではありますが
大量にあるリンクをまとめるなら、プルダウンメニューより
ツリー型メニュー とか treeview とか呼ばれる方法が望ましいと思います。
あとWebブラウザのフレーム機能は、将来性がよろしくないので
今のうちから代替手段を考慮すべきではないでしょうか。
ご回答誠にありがとうございました。
ご回答くださった、以下のプログラムに修正したところ
window.top.frames['contents'].location = url;
左フレームのプルダウンメニュータグのYahooをクリックすると
なんと見事に右フレームにHPが現れました。
最初の他者様の回答で、絶望的とだと思い込んでいましたが、できたから、とてもよかったです。
セキュリティなどの問題ですが、
イントラネットなので、外部と回線自体が接続されていないので 攻撃など心配はないです。
セキュリティの問題は全くと言っていいほど
問題はございません。
No.1
- 回答日時:
・フレームは止めましょう。
特に他サイトへのリンクには著作権の問題もあり使用すべきではありません。⇒フレーム( https://www.google.co.jp/search?q=%E3%83%95%E3%8 … )
他サイトの場合は新規ウィンドウで開くように・・
・ナビゲーションですからちゃんとナビゲーションとしてマークアップしましょう。
・<br>は通常使いません。一つの段落でありながら改行が必要な場合
HTML4だと大住所と小住所の境界、HTML5だと詩のように改行自体がコンテンツであるとき
以外は使わない。行間はスタイルシートで制御しましょう。
・javascriptはリンクには使わない
javascriptはすべてのユーザーエージェントが利用できるわけじゃない。
「JavaScript・【中略】・などの特殊な機能が使用されているためにサイトの一部がテキスト ブラウザで表示されない場合、検索エンジンのスパイダーがサイトをうまくクロールできない可能性があります。( https://support.google.com/webmasters/answer/357 … )」
単純に
<div class="nav"><!-- class名などで文書構造を示す -->
<ol>
<li>
<ol>
<li><a href="https://www.google.com/images?hl=ja&q=Lilliput">リリパット</a></li>
<li><a href="https://www.google.com/images?hl=ja&q=Brobdingna …ブロブディンナグ</a></li>
<li><a href="https://www.google.com/images?hl=ja&q=houyhnhnms">フウイヌム</a></li>
</ol>
</li>
<li><a href="./pronagare.html">クリックで動くプログラム</a></li>
<li><a href="./takesima.html">知恵袋 竹島問題</a></li>
</ol>
</div>
とマークアップして、スタイルシートで下の階層だけプルダウンにすればよい。
ご回答誠にありがとうございます。
質問したことで、プルダウンメニューはフレーム式だと使用できないことが分かりました。
しかし、
フレーム式は現在やめようとは思っておりません。
質問したHPはイントラネットの業務で使用しています。
、リンクタグが常に左に見えているので
HPを開いていても、電話等で質問が来た場合お目当てのタグが常に左に見えているので、直ぐに開いて
回答をすることができるので、私的にはとても使いやすいです。
しかし、プルダウン方式はあきれめて、別な方法を考えます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript セレクトボックスを2つ選択してメッセージなどを表示するには。~運賃検索プログラムを完成させたい~ 1 2022/07/22 11:10
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript セレクトボックスで配列を呼び出したい。 1 2022/07/08 20:14
- PHP php テーブルが作成できない 1 2022/11/17 23:41
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
スマホ上で、左右スワイプで次...
-
インラインフレームをドラッグ...
-
エラー:書き込みができません ...
-
戻るボタンで、フレームを読み...
-
openerは使えないのでしょうか?
-
設問をいくつか答えてその答え...
-
location=URLと、targetを使っ...
-
javaとフレーム
-
JavaScriptでできない事がある...
-
親フレームのURLによって、...
-
フレームを分けたときに共通で...
-
<a href="#" …>の意味を教えて...
-
別ファイルのfunctionの読み込み方
-
JavaScriptでiframeの内容を「...
-
bodyにidをつける理由は何ですか?
-
javascript 解析タグのコメン...
-
twitter widgetが表示されない
-
javascriptでalertの文字列をコ...
-
IEでのaタグのhover効果
-
onLoadをbodyタグ以外で使用する
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
HTMLでサブフレームから親のス...
-
スマホ上で、左右スワイプで次...
-
インラインフレームをドラッグ...
-
フレームを跨ぐドロップダウン...
-
インラインフレームで表示され...
-
別ページのインラインフレーム...
-
子フレームの自動リロードは可...
-
外部から読み込まれたJava...
-
openerは使えないのでしょうか?
-
Safariで<iframe>のinnerHTMLを...
-
他のフレームのスクリプトを実...
-
親フレームからkeydownイベント...
-
フレーム分割領域のサイズを変...
-
ページ遷移をコントロールしたい
-
フレームを使用した複数プルダ...
-
エラー:書き込みができません ...
-
親ウィンドウの別フレームを子...
-
jqueryを利用してインラインフ...
-
上と左にフレームわけされてい...
-
フレーム分割について
おすすめ情報