![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
皆さん、こんにちは。Blackwinglsです。
フレームの読込み順で困っています。
index.htmを以下のようにし、
<frameset rows="20%,80%" frameborder="0" border="0" framespacing="0">
<frame src="a.htm" name="up" scrolling="no">
<frame src="b.htm" name="down" scrolling="no">
</frameset>
a.htm、b.htmを読んでいますが、a.htm内に
<script language="JavaScript">
<!--
document.write(parent.down.myForm.word.value)
//-->
</script>
のscriptを記述すると、当然まだb.htmは読み込まれていないのでエラーが最初の一回だけ出てしまいます。
a.htmはフレームの上部に表示したいので、
<frameset rows="20%,80%" frameborder="0" border="0" framespacing="0">
<frame src="a.htm" name="up" scrolling="no">
<frame src="b.htm" name="down" scrolling="no">
</frameset>
の順は変更したくありません。
なんとか、先にb.htmを読み込ませて下部に表示させる方法はないものでしょうか?
No.2ベストアンサー
- 回答日時:
フレームの読み込み順は、決まっていません。
だから、a.htmlが先に読み込まれることもあれば、b.htmlが先に読み込まれることもあります。
どういう時にどちらが先に読み込まれるかという条件もありません。
(たぶん、どちらが先にhttpをつかんだかという問題でしかないと思います)
ただ、JavaScriptである程度制御することは可能です。
例えば、
1.指定のフレームが読み込み完了するまで、setTimeoutで待つ。
2.指定のフレームが存在する、という判定が返るまで待つ。
3.指定のフレームを参照するフレームを、数秒遅らせて読み込ませる。
等です。
ただ、基本的にフレーム割りのサイトを作成する場合、「片方のhtmlが読み込まれていること」を前提に作るのは、HTMLの仕様上無理があると思います。
JavaScriptは全部の人が使用できる物ではないですので・・・。
ひとつ使えそうなサンプルの載っているサイトがありましたので、載せておきますね。
ご参考までに。
参考URL:http://www06.u-page.so-net.ne.jp/wa2/mugi/js/
アドバイスありがとうございます。
参考URLは非常に為になりました。
昔、closed関係で悩んだ時、似たような手法を使ったことがあったのですが、今回この参考URLを見るまで、きれいに忘れ去っていました(^^;)
本当に助かりました。
> 、「片方のhtmlが読み込まれていること」を前提に作るのは、HTMLの仕様上無理があると思います。
本来はhtmlファイルはcgiで書き出す予定になっているそうですので問題はないと思うのですが、動作イメージを見てもらう為、今回このような形でやるハメになってしまいました(^^;)
ありがとうございましたm(__)m
No.1
- 回答日時:
はじめまして。
novaakiraです。質問にかかれているような条件で動作させたいのであれば....
たとえば、
<frameset rows="20%,80%" frameborder="0" border="0" framespacing="0">
<frame src="xxx.htm" name="up" scrolling="no">
<frame src="b.htm" name="down" scrolling="no">
</frameset>
として、xxx.htmの内容を、
<html>
<meta http-equiv="refresh" content="5;url=a.htm">
</html>
(動かない場合は<meta>タグを<head>タグ内に入れてください。)
とすれば、index.htm自体はxxx.htmとb.htmを呼び込み、
xxx.htmは5秒後にa.htmに転送されるのでご希望のとおりになる
はず........です。
回答、ありがとうございます。
これは・・・・、ちょっと思い付かなかったです(^^;)
基本といえば基本ですよねぇ。
灯台もと暗し、というか・・・・(笑)
そうか~、ワンクッション入れれば問題は解決だったのかぁ~。
俺ってかなりトンマでしたねぇ。
今回はJavaScriptを使用する方法で解決しましたが、次回に試してみたいと思います。
ありがとうございましたm(__)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・「I love you」 をかっこよく翻訳してみてください
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・昔のあなたへのアドバイス
- ・かっこよく答えてください!!
- ・あなたが好きな本屋さんを教えてください
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・【大喜利】【投稿~8/27】 こんなガソリンスタンド二度と来るか!なぜそう思った?
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・【お題】動物のキャッチフレーズ
- ・【お題】甲子園での思い出の残し方
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・自分用のお土産
- ・人生で一番お金がなかったとき
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・ちょっと先の未来クイズ第1問
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
iframeを使わないで・・・
-
どのページもすべて同じURLなの...
-
HTMLページの自動ジャンプの方法
-
直リンクとは。
-
フレームは使わない方がいい?
-
テーブルでのレイアウト~リン...
-
フレームを切っても全体スクロ...
-
フレームで指定している送信先...
-
ホームページの複数のページで...
-
フローティングフレームへのリ...
-
嫌だなと思うHPって?
-
インラインフレームの中のフレ...
-
googleドライブで、PDFファイル...
-
HTMLからフォルダを開きたい
-
大切なデータを誤って上書きし...
-
医療画像(Windows用)をMacで...
-
HTMLページが勝手にダウンロー...
-
自作ホームページのページ初期...
-
社内で利用するWebサイトを立ち...
-
webサイトの「index」を非表示...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
どのページもすべて同じURLなの...
-
pythonのエラーについての質問...
-
フレームで指定している送信先...
-
フレームの片方だけを更新(リロ...
-
frameの内容が表示されない
-
2つのページを重ねたい
-
WebサイトでHTMLのフォームに隠...
-
URLを変えないで表示する方法
-
フレームページが表示されない...
-
iframeを使わないで・・・
-
formデータ送信時にフレームペ...
-
html 左メニューから右への表示...
-
フレームが表示されない><
-
HP全体にmidiを・・・
-
HTML、1クリックで複数画像表示
-
HTML フレーム内にWebページを...
-
直リンクとは。
-
スタイルシートで背景画像を固...
-
フレームがあるページでの更新...
-
フレームの表示と非表示の切り替え
おすすめ情報