ママのスキンケアのお悩みにおすすめアイテム

質問させてください。
Windows IE6.1で試しています。


左右に分かれたフレームのページをつくり、
右ページにメニュー、左ページに掲示板を作っています。
左ページを更新したら、同時に右ページも更新させたいのですが、
それの方法がわかりません。

一応、下記の通り試してみましたが、更新しませんでした。

function autoOpen(){
window.open("menu.htm","menu");
}

左ページの更新時、
BODYを下記のとおり書き換えています。

<body onLoad="autoOpen()">

あと、
<body onload="parent.frames.menu.reload(true)">
も試してみましたが、やはりダメでした。

何卒宜しくお願いします。m(_ _)mペコリ

A 回答 (2件)

まずは、始めまして^^



早速ですが、質問の内容を見る限り、条件として左右にフレームが分かれた状態で、双方からページを変更出来る事を実現したいと言うことでよろしいのでしょうか?
(プラスしてポップアップウィンドウも更新させたいのかな??)
以下の説明は、親ウィンドウは左に掲示板(bbs)、右にメニュー(menu)、ポップアップウィンドウ(popup)でもメニューを表示するとして説明させて頂きます。


初めにフレーム間の操作についてですが、質問に最後に書かれている次の文は非常に惜しいですね
parent.frames.menu.reload(true)
非常に惜しいのですが、これでは多分エラーが発生してしまうと思います。

一つ記述を忘れている為に、発生しているエラーなのですが、その記述とは、「location」です。

日本語で訳すと、parent(親)の[frames(宣言されているフレーム中)]で「menu(menuと言うフレーム)」の「location(現在位置)」を「reload(更新)」してあげるのです。

つまり、以下の文に直せば上手く行ってくれると思います。(menu=フレーム右側、このScriptは掲示板ページから実行する物とします)

parent.frames.menu.location.reload(true)

付け加えて書いておきますが、framesは記述しない以下の文でも同様の動作をしてくれます。

parent.menu.location.reload(true)


次にポップアップウィンドウから親ウィンドウ内を操作する方法ですが、今回は親ウィンドウはフレーム単位で左右に分割されていると言うことなので、ポップアップウィンドウから一部のフレームを操作するのは、少し複雑になります。
以下に最初に説明した親フレームのmenuを更新するのと同様の動作をする例を書いてみますね^^
(この例ではポップアップウィンドウから親フレームのmenuフレームを更新します)

opener.menu.location.reload(true);

これで、ポップアップウィンドウからもmenuを更新することが出来ました。

以上で解説を終わります。
参考になったか分かりませんが、ホームページ作り、頑張ってください p(^-^)q
    • good
    • 0

<body onload="parent.frames.menu.reload(true)">



<body onload="parent.frames['menu'].location.reload()">
    • good
    • 1

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

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

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

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

Qフレームの片方だけを更新(リロード)させる方法を教えて下さい

ちょっとややこしいんですが...
<frame src="side_1.html" name="left">
<frame src="side_2.html" name="right">
<noframes>

そこから[side_1.html]でリンクされている[bbs.html]に移動して
その右フレームにある[bbs.html]を更新したいんですが...
更新をすると[side_2.html]になってしまうんですが
それを更新しても[bbs.html]で表示したいんです。

なにかいい方法はありますか?

Aベストアンサー

こんにちは。
window.locationのJavaスクリプトを使用するという方法でも良いのなら、
なんとかなるかもです。
参考URLの先に書いてあるほうを読まれてみてください。

後は、参考URLの後のほうのサイトにあるサンプルを
もじって、bbs.htmlの<head>~</head>区間に、

<SCRIPT Language="JavaScript">
<!--
function rld()
{
location.reload();
}
// -->
</SCRIPT>

…と入れてみては……ダメでしょうか(自信なし/汗)。

参考URL:http://wakusei.cplaza.ne.jp/twn/js/location.htm,http://www.shiojiri.ne.jp/~openspc/JavaScript/lib_/

Q子フレームの自動リロードは可能でしょうか?

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

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

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

Aベストアンサー

すみません、前回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>

※ブラウザ上での見易さを考慮して、全角スペースを使用しています。

すみません、前回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="...続きを読む

Qsubmitボタンで他のフレームを更新する方法

submitボタンで他のフレームを更新する方法

submitボタンで他のフレームを更新する方法が分かりません。
現在、以下のようなフレーム分けされたページがあります。

<frameset cols="50%,*">
<frame name="AAA" src="A.php">
<frame name="BBB" src="B.php">
</frameset>

ここで、A.php のフォーム内のsubmitボタンクリックのタイミングでA.phpは、
C.phpに遷移するのですが、同時にB.phpもD.phpに遷移させたいです。

方法をご存知のかたがいましたら教えてください。宜しくお願い致します。

Aベストアンサー

ページ移動はlocation.hrefです。

<form action="C.php" target="AAA" onsubmit="top.BBB.location.href='D.php';">

Q親ウィンドウの別フレームを子ウィンドウから操作したい

いろいろ試しているのですが、理解不足のせいでしょうが、どうやってもできません!
内容は以下の通り(分からないのは3)です。どうぞ宜しくお願いいたします。


1:画面を、AとBの2つのフレームに分割しています。
【index.html】
<frameset>
 <frame src="A.html" name="A">
 <frame src="B.html" name="B">
</frameset>

2:Aフレーム内に記述してあるaaaアンカーをクリックすると、子画面ko.htmlを開きます。
<a href="javascript:void(0)" onclick="window.open('path=ko.html','_blank');">子画面</a>

3:ko.htmlではbbbというアンカーがあって、それをクリックすると、"親画面のBフレームにbbbで指定したリンク内容を表示したい"のです。
<a href="javascript:void(0)" onclick="opener.window.location=('B?path=/home/~/~/ZZZ.html');">開きたいファイルZZZ.html</a>
と書くと、openerはAだからAにZZZ.htmlの内容が表示されてしまうので、(全くおかしな記述をしているのかもしれませんが・・・(- -;))あちこち調べながら、
B.opener.window.locationとか、
B.opener.window.location.hrefとか、
parent.B.window.locationとか、
parent.frames[1].window.locationとか、
ほかにもいろいろやってみたのですが、出来ませんでした・・・。
このような別フレームの操作が出来る方法があれば教えてください。
宜しくお願いいたします。

いろいろ試しているのですが、理解不足のせいでしょうが、どうやってもできません!
内容は以下の通り(分からないのは3)です。どうぞ宜しくお願いいたします。


1:画面を、AとBの2つのフレームに分割しています。
【index.html】
<frameset>
 <frame src="A.html" name="A">
 <frame src="B.html" name="B">
</frameset>

2:Aフレーム内に記述してあるaaaアンカーをクリックすると、子画面ko.htmlを開きます。
<a href="javascript:void(0)" onclick="window.open('path=ko.html','_blank');">子画...続きを読む

Aベストアンサー

ご質問の場合、子ウィンドウ(ko.html)からみて、openerはフレームAになっていますから、window.opener~はフレームAに対する操作を意味することになります。

Bフレームを取得するには
window.opener.top.document.getElementsByName('B')[0].src='http://www.yahoo.co.jp/';
などのようにしてあげればよいかと…

ところで現状で、ko.htmlは開いているのでしょうか?
(こちらの環境では、ご質問の通りだと開きません)

Qframeset要素を使わずに画面を分割したい

アンテナ(下記サイト)のように左にメニュー画面を、右にコンテンツを表示するホームページを作成したいと考えています。
https://antenna.jp/

ひとつのウインドウで画面を2つにわけるためにはhtmlのframeset要素を使えばできることは把握しているのですが、上記サイトのアンテナではframesetを使わずに画面分割をしています。

見た目やレスポンシブ対応のしやすさも考え、できればframesetを使わずに画面分割を行いたいのですが、どのようにすれば可能でしょうか。
メニュー部分とコンテンツ部分を別々にスクロールできるようにしたいです。

どなたか分かる方教えてください。

Aベストアンサー

長くなるから、参考ページ参照。

参考URL:http://www.geocities.jp/eijispace/2012/0419.html

QonClickに複数の関数を挿入する方法

初心者なのですがアニメーションの関数anime1、anime2、anime3を作成し、onClickに下記のように設定しました。
クリックするとアニメーション2つの設定ではは動くのですが、3つ目を設定すると動かなくなります。
通常はこのような設定はしないものなのでしょうか?
教えてください。
よろしくお願いします。
<INPUT type="button" value="START" onClick="anime1(), anime2()">・・・OKです。
<INPUT type="button" value="START" onClick="anime1(), anime2(),anime3()">・・・動きません。

Aベストアンサー

セミコロンでつなぐのが常道ですが、3つ以上なら
別途function化したほうが、可読性が高くなると
思います。

QHTMLフォームのSELECTの幅を一定にするためには?

HTMLフォームのSELECTの幅を一定にするためにはどのようにすれば
いいのでしょうか?

CSS等で設定できるとありがたいのですが、やり方がわかりません。

Aベストアンサー

<select style="width: 200px">

Q子ウインドウを閉じて 親ウインドウを更新

初歩的なことなのかもしれませんが、ご教授いただけると助かります。

やりたい動作は、

親ウインドウから<a href="" target=_blank>で
子ウインドウを開きます。

子ウインドウで処理を行った後、

----ここからの動作がわかりません-----

子ウインドウ上のボタンかアンカータグで

親を再読み込み
子を閉じる
親にフォーカス

こんな動作をJAVASCRIPTで実現可能でしょうか?
結果的に、子が閉じられ、親が再読み込みされた状態でフォーカスがあたるようにできれば最高です。

暇なときでかまいませんので、どうぞよろしくお願いいたします。

Aベストアンサー

こんな感じでいいかと思います
------------------------------
<script type="text/javascript">
<!--
function p_reload(){
var pwin=window.opener;
pwin.location.reload();
pwin.focus();
window.close();
}
//-->
</script>

<button type="button" onclick="p_reload()">親を更新して閉じる</button>

QHTMLフォームボタンによるターゲットフレームを指定したリンク

上下にフレーム分割してあり、上をname="header",下をname="contents"としてあります。


head側のHTMLに記述したフォームボタンを押すと、親ウインドウ(target="_parent")に
リンク指定先が展開されるようにしたいのですが下記の記述ではうまくいきません。
意図した親ウィンドウでなく、head側のフレーム内に展開されてしまいます。

<input type="button" name="01a" value="前へ" onclick="parent.head.location.href='../hoge1/1.htm'">
<input type="button" name="03a" value="目次" onclick="parent.head.location.href='../index.html'">
<input type="button" name="03a" value="次へ" onclick="parent.head.location.href='../hoge3/3.htm'">

参考にしたのは以下ですが、何が誤っておりますでしょうか。よろしくお願い致します。
http://www.west-mira.jp/javascript/link/button2.html

上下にフレーム分割してあり、上をname="header",下をname="contents"としてあります。


head側のHTMLに記述したフォームボタンを押すと、親ウインドウ(target="_parent")に
リンク指定先が展開されるようにしたいのですが下記の記述ではうまくいきません。
意図した親ウィンドウでなく、head側のフレーム内に展開されてしまいます。

<input type="button" name="01a" value="前へ" onclick="parent.head.location.href='../hoge1/1.htm'">
<input type="button" name="03a" value="目次" onclick="pa...続きを読む

Aベストアンサー

おそらく次のような構成になっているのかと思います。
<frameset>
<frame name="header">
<frame name="contents">
</frameset>
このとき、
headerから、ひとつ上の親にリンクを展開しようとすると、つまりフレーム構成がはずれる、ということですよね?

でしたら、
parent.location.href="URL"
が正しい記述です。
parent.(フレーム名).location.href="URL"
ですから、親ウインドウを基準にして
指定したheadフレームにリンクを展開していることになります。

Qテーブル内の文字サイズを変更したい。

HTMLのテーブル内の文字サイズを変更したいのですが。
イマイチ上手くいかずに悩んでいます。
出来れば全体的に<TABLE></TABLE>のほうでいじれますか?
<TD>タグや<TR>タグのところでいじくるのですか?

Aベストアンサー

いろいろやり方はありますが
文字単位でサイズを変更するには
#2の方法ですね。

テーブルごとやセル(<TD>)ごとにサイズを変更するには
スタイルシート(CSS)を使用します。

テーブルごとにサイズを変更する場合
<TABLE style="font-size : 20px;">

セル(<TD>)ごとにサイズを変更する場合
<TD style="font-size : 20px;">あああ</TD>

#1の方法だとページ内の全てのセル(<TD>)に設定することになります。

スタイルシート(CSS)はこれら以外にも
いろいろな設定方法があります。


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

人気Q&Aランキング