フレームで2つに分割されたページ(frameset.htm)があるとします。
そのうち、一つのフレーム(menu.htm,name=MENU)はメニューとして常に表示されています。
もう一つのフレーム(name=MAIN)にはその時々でいろんなページが表示されます。

仮に、例えば60秒おきとかで、MAINにその瞬間に表示されているページを、
frameset.htmもmenu.htmもリロードせずに、
自動的にリロードさせることは出来ますか?
MAINに表示させるページは閲覧者により手動でも変えられるようになっているため、リロードの瞬間にどのページが表示されているかは不定です。

なお、MAINに表示させるページ内に、Java ScriptやMETAタグは追加できない条件です。

A 回答 (4件)

すみません、前回BODYのonLoadで、とか書いてしまいましたが、フレームの方に全て書かなければならないので、FRAMESETのonLoadでした。


自分のところで動作確認済みのソースを下記に挙げますので、参考にしてみて下さい。

<HTML>
<HEAD>
<SCRIPT language="JavaScript"><!--
function reload_frame()
{
  frames["MAIN"].location.reload();
  setTimeout("reload_frame()", 500);
}
//--></SCRIPT>
</HEAD>
<FRAMESET ROWS="64,*" onLoad="reload_frame()">
 <FRAME SRC="menu.html" NAME="MENU">
 <FRAME SRC="main1.html" NAME="MAIN">
</FRAMESET>
</HTML>

※ブラウザ上での見易さを考慮して、全角スペースを使用しています。
    • good
    • 0
この回答へのお礼

お答えありがとうございました。
こちらでも試してみたところ、特定の条件(*1)のもと、動作することが確認できました。

*1:このJavaScriptを実行するHTML文書と、reloadの対象となるHTML文書が、ともに同じサーバー上またはともにローカルにある時に限るようです。それ以外ではエラーになります。前回、上手く動作していなかったのはこのせいだったようです。

セキュリティ上の制限でこのようになっているのでしょうか?
私は、複数のサーバーにサイトを持っているので、この制限がないほうが良いのですが、おそらく無理ですよね?

また、同じサーバーという判断がURLのどの部分で判断されているのか、が不明です。サーバー名のみで判断しているのか、パスの部分も含んでいるのですのかね?

もし上記の疑問に回答をお持ちでしたら、再度回答いただければ幸いです。

お礼日時:2001/10/03 21:06

Java ScriptやMETAタグを使わずにリロードさせるのは、私もわかりません。


ブラウザのリロードは、クライアント側の作業だと思うので、CGIなどのサーバー側のプログラムではできないと思います。

ちなみに、なぜJava ScriptやMETAタグが使えないのでしょう。
    • good
    • 0

frameset.htmは書き換えOKですか?


だとすれば、frameset.htmに下記のJavaScript関数を加え、何らかのタイミングで呼び出せば目的の動作を行えます。
<SCRIPT language="JavaScript"><!--
function reload_frame()
{
  frames["MAIN"].location.reload();
  setTimeout("reload_frame()", 60000):
}
//--></SCRIPT>

関数内の1行目が、フレームMAINのリロードを行います。
2行目で、この関数を60秒後に再実行するようにセットしています。
(setTimeoutの2番目の引数には、再実行までの時間をミリ秒単位で指定します。)

また、この関数は初め外部から実行しなければならないため、BODYのonLoad辺りから呼び出すようにしておくとよいでしょう。
<BODY onLoad="reload_frame()">

この回答への補足

教えていただいたのを参考にやってみていますが、未だ、上手く行っていません。全くリロードされません。onLoadは実行されているのは確かめたのですが。

補足日時:2001/09/23 15:36
    • good
    • 0

 フリーCGIプログラムのチャットで、2分割フレームになっているのを見たことがあります。


 上のフレームで発言を記入するのですが、何もしなくとも下のフレーム(ログが表示されている)は指定した秒間が過ぎると自動リロードされました。
 自動リロードという点から考えて、チャットプログラムを御参考にされてはいかがでしょうか。
 Perl言語についてあまり詳しくないのでどこまでできるのかわかりませんが、応用で可能になるのではないかと思えたので、ご参考になればと思い書きました。
 ただ、[MAINに表示させるページ内に、Java ScriptやMETAタグは追加できない条件]に合うかどうかもわたしには技量がなくて判断できませんが、、

この回答への補足

お答えいただきましたが、よくあるチャットスクリプトの自動リロードは、METAタグを利用しているだけなので、今回使えないのです。

補足日時:2001/09/22 16:16
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q ヽ(^。^)ノ ワードの「書式」→「フレーム」のことで……これで小さな枠を作っても、テキストボックスのような働きはしない?

 WindowsでWord2000を使ってます。
 「書式」の「フレーム」を開いて、新しいフレーム(上)とか新しいフレーム(左)とか、いろいろクリックすると、画面が細かく分割されます。そのフレームをマウスで移動させることもできて、おもしろいんですが、そうしてできた小さな枠のなかに文字を打って印刷しても、フレームは現われず、小さな枠のなかで3行で書いた文章も、印刷しますと1行になって出てきます。
 フレームで作った小さな枠には、「図形描画」の「テキストボックス」のような機能はないんでしょうか?
 そういう機能がないと、せっかくのこのフレーム、あまり意味がないと思うんですが?
 それとも、私のパソコンかプリンタの調子がわるいんでしょうか?

Aベストアンサー

ワードのフレーム機能は、複数の文書ファイルを1ページ内で
表示ための機能です。
フレームで区切られた領域は、それぞれ別の文書ファイルとして保存されます。

例えば、「文書1」というファイルを立ち上げてフレームをいくつか作ってみてください。
それぞれのフレームに、短い言葉(1,2,3とか亜、い、うなど)
を記入して保存します。
すると、「文書1」ファイルがあるフォルダに入力した文字と同じ名前の
文書ファイルがフレームの数だけ作られます。

あらかじめ作っておいた文書を好きなフレームに表示させることもできます。
任意のフレーム内で、右クリックからフレームのプロパティを選ぶと
参照(リンク)するファイルを選択できます。

ただ、印刷時はすべてのフレームを印刷することはできません。
アクティブな(カーソルがある)フレームが印刷対象になります。

ではこれは何のための機能なのか?
実はホームページを作成する為の機能のようです。
実際、名前をつけて保存から「Webページ」を選択すれば、
次回からは、ブラウザで開くことができます。
ブラウザ上ならば、すべてのフレームを一括印刷することができるので
yumi18さんの希望通りに印刷できると思います。

テキストボックスとしての機能はありませんが、
この面白さと、テキストボックスとしての機能を同時に求めるのなら
エクセルなどの表計算ソフトをお勧めします。

ワードのフレーム機能は、複数の文書ファイルを1ページ内で
表示ための機能です。
フレームで区切られた領域は、それぞれ別の文書ファイルとして保存されます。

例えば、「文書1」というファイルを立ち上げてフレームをいくつか作ってみてください。
それぞれのフレームに、短い言葉(1,2,3とか亜、い、うなど)
を記入して保存します。
すると、「文書1」ファイルがあるフォルダに入力した文字と同じ名前の
文書ファイルがフレームの数だけ作られます。

あらかじめ作っておいた文書を好きな...続きを読む

QMAINページの読み込み完了まで、SUBページを表示しておくことは可能ですか?

JAVASCRIPTの初心者です。次のような動きをするプログラムがJAVASCRIPTで組めますか? 教えてください。
〈現状〉ページAから、多数の画像を掲載するページBにリンクで飛ばしていますが、ページBのレイアウトが画像読み込み中、崩れ(TASBLEが膨れる)てしまいます。ページA、ページBは別HTMLです。
〈求める動き〉
(1)ページAから多数の画像を掲載するページBにリンクで飛ばす。
(2)ページBの読み込み中、ページBに代わるSUBページを表示する。
(3)ページBの読み込みが完了(レイアウトが安定)し次第、ページBを表示する。

こうした動きが可能なのか、不可能なのかも分かりません。どうぞよろしくお願いします。

Aベストアンサー

そのようなことをやっている例はないと思いますが、できないことはないかも…

(2)でバックグラウンドでキャッシュに画像を読込んでおいて、終わったところで、ページB'(本当の掲載ページ)に移動することで、ある程度までは似たことができるかも…(未確認)
ただし、ユーザーがキャッシュの設定をほとんど0にしていると、再度読込むことになる可能性もあるので、なんとも言えませんが。
画像の読込み状態のチェックに関しては別の質問が参考になるかと。
 http://oshiete1.goo.ne.jp/qa4680625.html

実際は↑のような面倒な方法をとるよりも、レイアウト指定の際に画像のサイズ等を明確にすることで、ブラウザが適宜レイアウトを決められような方法をとるのが、対策としてはよろしいかと思います。

Q画像の枠にオシャレなフレームをつける事ができるサイト

よろしくお願いいたします。

私は今までブログに写真をUPする際は、「CURURU」というサイトで画像の枠にフレームをつけるオプションを利用していたのですが、残念な事にCURURUが今月末で閉鎖してしまう為、他のサイトや無料ソフトで画像にフレームをつける事ができる場所を探しております。

できれば少しオシャレなフレームなどがあるサイトだと嬉しいのですが。。><
過去の質問も検索し拝見させて頂きましたが、探しているようなサイトやソフトの紹介がなく質問させて頂きました。
大変困っております。。
どなたか分かる方がいらっしゃいましたら教えて頂けませんでしょうか?
よろしくお願いいたします。

*現在使用しているフレームの画像を添付いたします。

Aベストアンサー

サイトについては(閉鎖されてる可能性もあるので)紹介できませんが、
ソフトについては何度も回答している一つ覚え的なものですが紹介することはできます。

【PhotoScape】などはいかがでしょうか。
http://freesoftdownload.1-yo.com/image-editor/photoscape.html
紹介記事を書いているサイト
http://postcard.sakura.ne.jp/PhotoScape.html

添付した画像は、質問に添付したものを真似て加工したものです。

Qフレーム表示のページのリンク先を同ページ内に複数指定したいのですが・・・

お世話になります。

質問の内容なのですが、
ホームページをフレーム表示でA,B,Cと3分割した場合に、
フレームAのリンクの1つをターゲットフレームでフレームBにリンクしたとします。
フレームAからフレームBにリンクしたリンクをクリックした時に、フレームCの表示を違うHTMLに変えることはできないのでしょうか?
わかりずらくてすみません。
要は、フレームAのリンク指定先をフレームBとC
2つにすることは可能なのでしょうか?

またフレームBにリンクしてあるフレームAのリンクをクリックした時に、
フレームCに貼ってある画像のみを変更するようなことはできるのでしょうか?

わかりずらくて申し訳ありませんが、よろしくお願い致します。

Aベストアンサー

ここにあるサンプルで出来ませんか?

http://www.usagi-js.com/sample/jssample6.htm

参考URL:http://www.usagi-js.com/sample/jssample6.htm

QHP作成のヒント。これってフレーム?枠?

ホームページ作成しようと思っているのですが・・・

http://ip.tosp.co.jp/i.asp?i=milk_marie

こんな風にしたいのですがこれってフレームでしてるのでしょうか。フレームではなく、枠ですか?

こんな感じで周りがピンクの枠でその中にスクロールバーを入れて、バック固定でしたいのですが、タグ等分かりましたら教えてください。
あと、こんな感じのタグが沢山あるサイトさんがあれば教えてください。イラスト素材ではなく・・・

ちなみにこのサイトさんは通りがかりで見つけたものですので参考までに・・・

Aベストアンサー

Javaはの知識はあまりないですが、そんなの使わなくても再現可能です。
ちなみにフレームでもできますが、そうでない方法を紹介します。

スタイルシートは分かりますか?
<style type="text/css">
<!--
body { border-width:20px; bordercolor:#ffcc99; border-style:solid;}
-->
</style>

これをヘッダーの中に埋め込みます。

URLを貼っておきます。
これは参考になると思います。

ちなみに今紹介したのは、最下部「その他の小技」の「ページを枠で囲む」という項目に載っています。

参考URL:http://hp.xrea.jp/m/index.html

Qonmouseover="this.className=をjsファイルにまとめて、指定する場所はid=menu1,2~....かclass=menuで統一したい

<div class="font1 bor1"
onmouseover="this.className=this.className+' bgcol txcol'"
onmouseout="this.className='font1 bor1'">
というものがあったとしてこれを
<div id="menu1・・・2・・・">だけにして
onmouseover=~をjsに略記できるようにしたいのですが
何かいい手はありませんか?

idで指定できる版のほかに
classで指定できる版があるとうれしいです。classだと難しいでしょうか?

また、こちらももしできればでいいのですが、this.classNameを
指定IDのclassName等もできるのでしょうか?

質問に不足があれば答えられる範囲で答えます。よろしくお願いします。

Aベストアンサー

もうひとつ、質問内容を把握できてませんが、
jQueryを使ったサンプルを。中身は
「font1」ってclassを持つ要素のマウスオーバーで
bgcol と txcol の二つのクラスを追加する。
マウスアウトで
bgcol と txcol の二つのクラスを取り除く。
です。

<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(function(){

$('.font1').hover(function(){
$(this).addClass("bgcol");
$(this).addClass("txcol");
},function(){
$(this).removeClass("bgcol");
$(this).removeClass("txcol");
});

});
</script>

$('.font1') という部分を $('#font1') と書けば id="font1" の要素に対する設定になります。 

jQueryの解説、入手先等は
http://www.openspc2.org/JavaScript/Ajax/jQuery_study/index.html
とか、参考にしてください。

もうひとつ、質問内容を把握できてませんが、
jQueryを使ったサンプルを。中身は
「font1」ってclassを持つ要素のマウスオーバーで
bgcol と txcol の二つのクラスを追加する。
マウスアウトで
bgcol と txcol の二つのクラスを取り除く。
です。

<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(function(){

$('.font1').hover(function(){
$(this).addClass("bgcol");
$(this).addClass("txcol");
},function(){
$(this).removeClass("bgcol");...続きを読む

Q枠がないフレーム

よく他のホームページで枠がないフレームがありますが
あれはどうやってプログラムを作ればよいのでしょうか?
このサイトも枠がないのですが、いわいるこんな感じです

Aベストアンサー

<frame border="0">
のことでしょうか。

フレームについては以下のサイトに詳しく載っています。

参考URL:http://papa345.hp.infoseek.co.jp/www/wwwreffr.htm

Qフレームではなくページの中央にフレーム?・・・

最先端のサイト(?)に行くと、フレームではなくて、ページの中央に別空間のようにページが表示されているものがあります。その「別空間」だけにスクロールバーもついています。
これってjavascriptで操作しているのですか?
これは、javascriptのいろいろなページでもサンプル見たことがないので質問させていただきます。

(例)
http://www.fujitv.co.jp/jp/warauinu/

Aベストアンサー

こんな感じでどうでしょうか?
個人的には多重フレームで表示が遅くなったり
ウィンドウが小さいと表示されなかったりするので大嫌いです。

<HTML>
<FRAMESET rows="10%,80%,10%" border=0 frameborder=0 framespacing=0>
<FRAME src="" scrolling="no" noresize>
<FRAMESET cols="10%,80%,10%" rows="*" border=0 frameborder=0 framespacing=0>
<FRAME src="" scrolling="no" noresize>
<FRAME src="main.html">
<FRAME src="" scrolling="no" noresize>
</frameset>
<FRAME src="" scrolling="no" noresize>
</frameset>
</HTML>

QPhotoshop6.0木枠のフレームは?

http://dospara.okwave.jp/qa2849925.html
の質問の続きですが、確かにフレームはできました。
しかし木の枠みたいな、フレームの作成はPhotoshop6.0では無理ですかね!
宜しくお願いいたします。

Aベストアンサー

技量次第で何でもできるソフトです。
写真素材のテクスチャがあればそれを利用しても良いですが、無いなら自分で作成できます。
作成した画像を縦横に配置すればフレームが完成します。

http://www.furuoka.com/photoshop/text_wood_04.html

Qリンク先をフレーム(+フレーム内の1つを別々のページへ)

タイトル通りなんですが、

あらかじめ、frame.htmlという
上と左右に分割されたページ
(上はtop.html、左はleft.html、右はright.html)
があるとします。

で、index.htmlから1~3までのリンク先があり、
そこをクリックすると、frame.htmlの
top.htmlとleft.htmlだけ同じファイルを呼び出し、
right.htmlの部分だけ各1~3のページを
読み出す事はできるのでしょうか?

1~3.html用にそのフレームページを3つ作れば早いのですが
どうにかして、frame.htmlの「right」だけを各リンク先のページに
切り替えるという、1つのファイルで賄いたいと思っております。

宜しくお願い致します。

Aベストアンサー

方法としては、
・index.htmlのリンク1~3のhrefをそれぞれ
 "frame.html?ptn=1"
 "frame.html?ptn=2"
 "frame.html?ptn=3"
 などとしてframe.htmlへどのリンクを踏んだかを渡す

・frame.htmlの先頭でindex.htmlから渡された値(ptn)を取得する
 window.documentあたりで取得できると思います。
 (文字列操作等が必要かもしれない)

・取得した値(ptn)によってframesetのsrcを振り分ける。
 ptn=1だったらright1.html
のような感じで。

といった具合で実現可能かと。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング