• ベストアンサー

フレームだけ閉じる方法ありますか?

ちょこっと下の記事でホバーウィンドウについて質問した者です。(何度もすいません) ホバーウィンドウをiframeでもってdropinさせる事に成功したのですが 今度は閉じるボタンが何度やってもうまくいきませんでした。 http://oshiete1.goo.ne.jp/qa1517.html などの過去ログを参照して何度もトライしてみたもののどうやっても出来ませんでした。調べた感じでは <script type="text/javascript"> <!-- function closewin() { self.window.close(); } // --> </script> と <a href='#' onClick'self.window.close();'>閉じる</a> で出来るのかとトライしてみました。top.closeやparent.closeではうまくいきましたがそれでは全部が全部閉じてしまいました。どうやれば落ちてくるフレームページだけを閉じれるでしょうか?よろしくお願い致しますm(__)m

  • HTML
  • 回答数3
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • N_A_O
  • ベストアンサー率66% (37/56)
回答No.3

ご免ね、もう一度試したら下記で出来た。 iframeのhtmlに記入。 <a href="#" onClick="parent.dismissbox();return false" id="dropin">[Close Box] </a>

presidentofus
質問者

お礼

NAOさん 出来ました!! 一度ならず二度までもお助け頂き本当に助かりました! 感謝感激です!有難う御座いました!

その他の回答 (2)

  • N_A_O
  • ベストアンサー率66% (37/56)
回答No.2

このスクリプトはiframeでself.window.closeは出来ないみたいだね。 indexの方に <a href="#" onClick="dismissbox();return false">[Close Box]</a>

  • leap_day
  • ベストアンサー率60% (338/561)
回答No.1

こんにちは ホバーウィンドウというのは分からないですけど・・・ <iframe>ですよね? window.close()の方法ではないですけど・・・ 親ページ(<iframe>外)で操作する <script type="text/javascript"> <!-- function openifr() { document.getElementById("inline").style.display = "block"; } function closeifr() { document.getElementById("inline").style.display = "none"; } // --> </script> <input type="button" value="open" onclick="openifr()"> <input type="button" value="close" onclick="closeifr()"> <iframe src="***.html" name="inline" style="display:block"></iframe> <iframe>内で操作する(iframeに表示させてるページで) <script type="text/javascript"> <!-- function closeifr() { parent.document.getElementById("inline").style.display = "none"; } // --> </script> <input type="button" value="close" onclick="closeifr()"> とりあえずボタンにしてますけどリンクでもかまわないです <a href="" onClick="closeifr()">close</a> iframe内であればこれでいいと思いますが親で操作するときは <a href="">は使えませんので・・・

presidentofus
質問者

補足

やってみました・・・が、やっぱり出来ませんでした。

関連するQ&A

  • フレームにすると

    はじめまして。 javaについては全くの素人です。 お力を貸していただきたくて投稿いたしました。 以下の様なページを作り、 <HEAD> <TITLE>ウィンドウを閉じる</TITLE> <SCRIPT language="JavaScript"> <!-- function CloseWin(){ window.close(); } // --> </SCRIPT> </HEAD> <FORM> <INPUT type="button" value="ウィンドウを閉じる" onClick="CloseWin()"> </FORM> </BODY> </HTML> テストしたら、「ウィンドウを閉じる」ボタンは機能したのですが、このhtmlファイルをフレームの一つのして読み込むと機能しません。 なぜなんでしょうか? どのようにすれば、機能するようになるのでしょうか? 大変初歩的な質問ですが、周りにだれも教えてくれるものがいませんので困っております。 よろしくお願いします。

  • Firefoxでwindow.close()が効きません

    Win、MacともIEでは問題ないのですが、Firefoxでwindow.close()が効きません。 Firefoxのバージョンは、Windows→1.0.7、Mac→1.5.0.1です。 ソースは以下のとおりです。 <form> <input type="button" name="Submit" value="ウィンドウを閉じる" onClick="javascript:window.close();"> </form> また、以下の方法も試してみたのですが動作しませんでした。 <SCRIPT language="JavaScript"> <!-- function CloseWin(){ window.close(); } // --> </SCRIPT> <FORM> <INPUT type="button" value="ウィンドウを閉じる" onClick="CloseWin()"> </FORM> aタグのターゲットブランクで別ウィンドウを開いた場合です。よろしくお願いいたします。

  • フレームで呼び出したhtml名の取得

    お世話になります。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=2374524 で、教えて頂いた関数呼び出しについてです。 フレームを左右に分割しています。 左側 frame_left.html    name="left" 右側 最初page1.html    後でページを切り替える name="main" としたとき、 frame_left.htmlで <a href="page2.html" onclick='getTagName();' target="main">ページ2</a> とすると、右側フレームはpage2.htmlに切り替わります。 このとき、getTagName();が、ページが切り替わった後に実行される方法として、 No1.talepandaさんに、 <body onload="window.parent.left.getTagName();"> と、いう方法を教えて頂きました。 ここで、関数getTagName()で、この呼び出したhtml名、つまりpage2.htmlを取得できないものでしょうか。 いろいろと試してみました。 alert("window.parent.mainfrm.location.href="+window.parent.mainfrm.location.href); //framesetを定義したhtml名となってしまう。 alert("window.mainfrm.location.href="+window.mainfrm.location.href); //スクリプト停止 alert("location.href="+location.href); //frame_left.htmlになる。 と、いうことでいずれもダメでした。 このような呼び出し方をした場合、呼び出しもとのhtml名を取得できないのでしょうか。 どうか、よろしくお願いいたします。

  • Fire FoxでWindow Closeを有効にする

    Fire FoxでJavaScript Close Windowが効かない・・・ ということで、以下ScriptをHead内に <script type="text/javascript"> function clsWin(){ window.opener = window; var win = window.open(location.href,"_self"); win.close(); } </script> を記入し、HTML内には <INPUT type="button" value="Close" onclick="close_win()"> と記入したのですが、 やはり反応がありません・・・。 どなたかご存知の方、教えてください!

  • iframe子ページから親ページへのアクション

    iframe内(子ページ)の<input>をクリックすると、 親ページのアクションとして<a href="#wrap">●●●</a>の 「●●●」を押したときと同じアクションをしてほしいのです。。 <input type="submit" onclick="(function(){ window.parent.※※※※※(); }());" /> ↑みたいな感じで実現できるのでしょうか?(T_T)

    • ベストアンサー
    • HTML
  • 【JavaScript】iFrame内submit

    JavaScriptで、iFrame内のFormをsubmitする方法を教えてください。 条件: iFrameに読み込むページは千差万別で、FormにIDもNameも設定されていない状況(ただし、必ずFromは1つ)で、そのiFrame内のフォームをsubmitする方法。 Form名がわからないですから、getElementsByTagName("form")[0]で呼び出すしかなさそうなんですが、 (iFrameの名前を"ifl"とします)iFrameの外に置いた空アンカーで <a href="#" onclick="parent.ifl.getElementsByTagName(\"form\")[0].submit()">iFrame内をsubmit</a> としても <a href="#" onclick="document.ifl.getElementsByTagName(\"form\")[0].submit()">iFrame内をsubmit</a> としてもうまく動きません(;´Д`) どういうエラーが出てるのか知りたかったので、onclick内部を外出しして、try-catchでくくり function pushSubmit() { try { eval("parent.ifl.getElementsByTagName(\"form\")[0].submit()"); } catch(e) { alert(e); } } としてから、pushSubmit()を空アンカーで実行すると、エラーは「Error: Permission denied for <file://> to get property Window.getElementsByTagName」と返ってきます。 もう、どうにも突き当たってしまいました・・・ どなたか光明を差して下さい・・・orz

  • フレーム内リンクを禁止したい

    表題のとおり、フレーム内へのリンクを禁止したく <script language="JavaScript"> <!-- if (parent.location.href != window.location.href) parent.location.href= window.location.href; //--> </script> を<head>と</head>の間に入れてみましたが、「書き込みができません。」とエラーになります。 どこか間違っているのでしょうか。

  • ポップアップから親ウィンドウへリンクを飛ばす方法

    ポップアップしたページに、Flashが埋め込まれている状態で、そのFlash内のボタンをクリックしたら親Windowのページが切り替わるようにしたいのですが、可能でしょうか。 【親:index.html】 <SCRIPT language="JavaScript"> function popup_modeless(url){ var newWin = window.open(url,"pop","width=800, height=480"); newWin.focus(); } </SCRIPT> <a href="" onClick="popup_modeless('pop.html')">開く</a> 【子:pop.html内のFlash】 リンク用のMCを貼り付け、そこに以下のスクリプト on(release){ getURL("jump.html","pop"); } では子window内に表示してしまいました。 ヘルプを見ると、getURLのwindowオプションには任意の名前は認められていないようで、_self,_blank,_parent,_topしか記述されていませんでした。 _parentでも同様に子window内での表示になりました。 Flash内から親Windowに表示させるにはどうすればいいのでしょうか。 よろしくお願いいたします。 ※ActionScript2.0、CS3です。

    • ベストアンサー
    • Flash
  • 指定の時間でのonclickイベントについて

    はじめまして、よろしくおねがいします。 通常は普通のリンクタグで運用し、指定の時間になると onclickイベントによって、別ウィンドウに指定ページを表示させたい という要件です。 で以下のように書いてみました <script language="JavaScript"> <!-- var now=new Date(); var Tm=now.getHours(); if((Tm>=12)&&(Tm<13)){document.write("<a href='hoge.html' target='_parent' onclick='window.open('http://www.hoge.co.jp/hogege.html')';>ここ</a>");} else if((Tm>=18)&&(Tm<19)){document.write("<a href='hoge.html' target='_parent' onclick='window.open('http://www.hoge.co.jp/hogegehogege.html')';>ここ</a>");} else if((Tm>=22)&&(Tm<23)){document.write("<a href='hoge.html' target='_parent' onclick='window.open('http://www.hoge.co.jp/gegeho.html')';>ここ</a>");} //--> </script> 12時から13時、18時から19時、22時から23時にイベントが発生します。 一応document.writeの内容は時間によって切り変わることの検証は行いましたので、OKなのですが、肝心の別ウィンドウが開きません。 window.open()のように()内を空白にしてみたところ about:blankで別ウィンドウ自体は開きますがURLをいれると駄目みたいです。 上記のことから、大変初歩的なところでつまづいている気がしていますが、間違い部分を御指摘くださればと思います。 それではよろしくおねがいします

  • Firefoxでの win.close(); について

    ポップアップで開いたページ内の閉じるボタンからウィンドウを閉じるようにしたいのですが、 firefoxでのみ少々動作が異なり、一度目のアクセス時のみウィンドウが閉じません。 IEやsafariでは問題なく閉じています。 一度ポップアップウィンドウを閉じて、再度親htmlファイルのリンク先からポップアップを開いて試すと、ちゃんと閉じます。 a.htmlからポップアップでb.htmlを開き、b.htmlの中にb.swfを配置しています。 ソースと環境は以下の通りです。 ----------------------------------------- ■b.html <head>タグ内 <script language="javascript"> <!-- function closeWin(){ window.opener = window; var win = window.open(location.href,"_self"); win.close(); } // --> </script> ■b.swf 閉じるボタンアクション on (release) { getURL("javascript:closeWin();"); } ----------------------------------------- windowsXP SP2 firefox1.8.2 IE7 ----------------------------------------- ローカルでもウェブ上でも同様でした。 初回アクセス時からfirefoxでも閉じるボタンを機能させるにはどうしたらよろしいでしょうか。

専門家に質問してみよう