皆さん、こんにちは。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.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
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
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- JavaScript javascriptで変数を組み込みたい 2 2023/01/13 09:52
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- HTML・CSS FC2カートのテンプレートでの商品表示について 1 2023/03/02 18:05
- HTML・CSS 下にスクロールしても、追従するボタンのコードを書いたのですが、ボタンの中の画像が半分しか表示されない 1 2022/04/16 21:31
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- JavaScript セレクトボックスで配列を呼び出したい。 1 2022/07/08 20:14
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
WebサイトでHTMLのフォームに隠...
-
インラインフレーム内のマウス...
-
フレーム別に更新
-
CSSを使って画像をクリックする...
-
CSSによるFrameの代替方法
-
ブルダウンメニュー → インラ...
-
フレーム内のURLを表示させる方法
-
画面の一部だけ更新したいので...
-
フレーム分割しているページで...
-
pythonのエラーについての質問...
-
フレームで区切った時の隙間を...
-
2つのページを重ねたい
-
フレームの片方だけを更新(リロ...
-
フレームページが表示されない...
-
フレームページで表を表示させ...
-
フレームなしのページからフレ...
-
HTMの IFRAME タグの代わりにな...
-
ホームページでファイルをダウ...
-
<!DOCTYPE html>あってますか?...
-
<!DOCTYPE html>あってますか?...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
どのページもすべて同じURLなの...
-
フレーム内のPHPへPOSTで情報を...
-
pythonのエラーについての質問...
-
2つのページを重ねたい
-
フレームの片方だけを更新(リロ...
-
html 左メニューから右への表示...
-
URLを変えないで表示する方法
-
フレームページが表示されない...
-
スクロールできない
-
フレームで指定している送信先...
-
フレームが表示されない><
-
html リンクを別フレームに表...
-
ブラウザで4分割表示できますか?
-
直リンクとは。
-
frameの内容が表示されない
-
HTMLファイルの置き方による読...
-
CSSを使って画像をクリックする...
-
フレーム分割した全体をスクロ...
-
フレームの表示と非表示の切り替え
-
HPの一部に他のHPを表示
おすすめ情報