HTML構成を示します.
親 index0.html(name:content0)
子 iframe01(name="child-1" src="child01.htm" )
子 iframe02(name="child-2" src="child02.htm" )
(child02.htm内 )
孫 iframe-a (name="mago-a" src="mago-index.htm")
孫 ihrame-b (name="mago-b" src="mago-menu.htm")
孫 iframe-c (name="mago-c" src="mago-content.htm")
(mago-content.htm内)
ひ孫 iframe-gch1(name="khead" src="gc-a.htm")
ひ孫 ihrame-gch2 (name="kmenu" src="gc-b.htm")
ひ孫 iframe-gch3 (name="kcontent" src="gc-c.htm")
ひ孫に当たるiframe-gch3のgc-c.htm内から親ウインドウiframe01内にある
child01.htmの背景色を変えたいと考え,いろいろ試していますが
上手く行きません.
苦肉の策として背景色を変えたhtmを用意し下記のようにしてみましたが
動きませんでした.
gc-c.htm内 javascript
function open01(){window.open('別file', 'child1');}
もしくは,子iframeのchild01.htm内にある
function ch01(){document.body.background='gray.gif';}
をgc-c.htm内から動かす方法がありましたらご教示下さい.
よろしくお願いします.
No.1ベストアンサー
- 回答日時:
こんにちは
同一ドメインならば、単純にparentを辿って該当するdocumentを取得すればよさそうに思えますが・・・
window.parent.parent.parent.document.querySelector("iframe[name='child-1']").contentWindow.document.querySelector("body").style.backgroundColor = "red";
とか。
早速の返答ありがとうございます.No2のyambejpさんもご指摘の通り,最初はそれで簡単にできると思っておりました.ところが,親ウインドウ内のiframe01だけが変わらなかったのです.”同一ドメイン”にヒントを得て,すべてのhtmlを同じフォルダに置くと,回答欄一行目の書式でいとも簡単に変えることが出来ました.確かに,子のiframe02以降はそのフォルダーの階層下にあります.
また,教示いただいたquerySelectorを使った書式でも変えられませんでした.
ディレクトリ構造も考えないとだめなのかなと思いはじめています.
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ひ孫に当たるiframe から親ウイ...
-
ASP.NETでNAME属性を固定にしたい
-
GETパラメータの内、空文字のク...
-
javascript name="hoge"等に記...
-
cookie使用時にundefinedと表示...
-
for文の使い方について
-
submit()で送れない
-
OnClickでURL生成し、飛ばしたい
-
リンク先を新しい窓で開くには?
-
name属性の背景に色をつける
-
return trueとreturn falseの用...
-
特定<table>内の<td>の色を変える
-
value内に変数を入れたい
-
確認ダイアログの出し方(JavaS...
-
至急!GetElementById でtdの...
-
HTML中のTABLEのデータを抽出す...
-
XMLHttpRequestを利用してPHPへ...
-
innerHTML内では改行は禁止?
-
プルダウンで選択すると、DBの...
-
slickのレスポンシブ > center...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【jQuery】input nameの文字列...
-
二つの入力欄に、同時に同じ文...
-
新しくフォルダを作成したい
-
name属性のないformタグの、中...
-
入力フォームに半角スペース以...
-
ラジオボタンでクリックした値...
-
ASP.NETでNAME属性を固定にしたい
-
JavaScriptにて動的に配列を作...
-
cookie使用時にundefinedと表示...
-
submitボタン押下時にPOSTされ...
-
Javascriptでのbuttonのname属...
-
エクセル マクロ submitについて
-
jqueryでtextareaのcols、rows...
-
javascriptの値をformのinput h...
-
動的にTabindexの値を変えたい!
-
テキストボックスの入力をリセット
-
ファイル選択ダイアログが表示...
-
現在フォーカスのオブジェクト...
-
ボタンを押すとテキストボック...
-
テキストエリアをenterキーでフ...
おすすめ情報
回答者様へ
すべてを同じディレクトリーの階層下に置くことにより,解決致しました.やはり知識不足が原因だったようです.解決の糸口になりました回答をベストアンサーに選ばせて頂きました.
あまり問題にならない質問への回答をありがとうございました.