タイトル表示をインラインフレームの<title>内のものにしたい

このQ&Aのポイント
  • インデックスページのtitleタグで表示されているタイトルは問題ないが、インラインフレーム内のページでは異なるタイトルを表示することは可能か
  • 具体的な例として、インデックスページで「インデックス」と表示されるが、インラインフレーム内で「案内」と表示したい
  • 要約文3
回答を見る
  • ベストアンサー

タイトル表示をインラインフレームの<title>内のものにしたい

最初に「index.html」にアクセスしたときは、そのままのタイトル表示 (<title>タグ内のもの)で問題ないのですが、インラインフレーム内 に、例えば「annai.html」を表示させたときに、現在のフレーム内の ページタイトルに変えることは可能でしょうか? 下に詳しく表記します。 アクセス当初「index.html」 ↓ ・・・・・・・・・・・・・・・・・・・・ <html> <head> <title>インデックス</title> </head> <body> <a href="annai.html" target="NAME">案内</a> <iframe name="NAME" (略)></iframe> </body> <html> ・・・・・・・・・・・・・・・・・・・・ 上記のままだとブラウザのタイトルバーに「インデックス」と表示される インラインフレームに「annai.html」を表示させたとき、 ↓ ・・・・・・・・・・・・・・・・・・・・ <html> <head> <title>案内</title> </head> <body> </body> <html> ・・・・・・・・・・・・・・・・・・・・ タイトルバーを上記の<title>タグ内の、「案内」に変えたい 返ってややこしい説明になっていましたら、スイマセン。 回答よろしくお願いいたします。

  • HTML
  • 回答数2
  • ありがとう数7

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

  • ベストアンサー
  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.1

Javascriptを使って。 <iframe onload="document.title=this.contentWindow.document.title" ~></iframe> Javascriptを使っているので、iframe内に別ドメインのページ(外部サイト)を読み込むとエラーになります。 最初からiframe内のページのタイトルになりますので、 最初にiframe内に表示するページに妥当なtitleを付けておく必要があります。 Operaでは動作せず。原因不明。(ただしエラーにもならない。)

coco_relax
質問者

お礼

できました! cssで何とかならないものかと足掻いていましたが、これでも納得です。 Javascript、便利ですね。 Operaブラウザのために、index.htmlのタイトルにも配慮します。 有難うございました。

その他の回答 (1)

  • abril
  • ベストアンサー率69% (388/560)
回答No.2

蛇足です。が、ちょっと気になったので。 > cssで何とかならないものかと足掻いていましたが、 CSSはあくまで見栄えを整えるものであり(一部動的に見える効果や使用法もありますが)、動的に何かを書き出したり、という機能は担っていませんのでJavaScriptは全く性質の違うものです。特に、今回の様な<title>~</title>に関しては「見栄え」とは"全く関係のない"<head>内の要素ですし、その中のテキストを入れ替えるなどということはできません。今後はCSSの役目を把握しておく事をお奨めします(無駄な労力を費やさない為に)。

coco_relax
質問者

お礼

WEBデザインを始め、実務を1年ほど経てから 自宅での制作依頼があり、やっと実績に繋げたくらいの知識です。 ご指摘有難うございます!

関連するQ&A

  • 親ページからインラインフレーム内の<a name="~">リンクへ飛ばしたときのIEの動きについて

    例えば、IEで <html> <head><title>index.html</title> </head> <body><center> <p style="margin: 100px auto 50px auto">サンプル</p> <p><a href="a.html#a" target="frame">リンク</a></p> <iframe src="a.html" width="640" height="500" name="frame" style="margin-bottom: 400px"> </iframe></center> </body> </html> というソースのindex.htmlに、 <html><head><title>インフレーム・a.html</title></head> <body><p style="margin-top: 500px">余白</p> <p><a name="a">NAME A</a></p> <p style="margin-top: 500px">余白</p> </body></html> というソースのa.htmlというファイルをインラインフレームで読み込み、 index.htmlの「<p><a href="a.html#a" target="frame">リンク</a></p>」をクリックした場合、 インラインフレーム内のa.htmlの「<p><a name="a">NAME A</a></p>」がブラウザの一番上に表示されるよう、 index.htmlのページ全体が上に動いてしまいますよね。 これを、(同じものをOperaで動作させたときのように、) index.htmlのページ全体ではなくインラインフレーム内のa.htmlだけが 動くように表示させたいのですが、何かいい解決策はあるでしょうか? 最初はIEのバグかと思ったのですが、FirefoxでもMozillaでも 同様なので、Operaの解釈のほうが特殊なのかもしれませんが…。

    • ベストアンサー
    • HTML
  • インラインフレームの表示方法

    少し前からホームページを作成しようとしているのですが、 テーブル内にインラインフレームを入れたところ、safariでインラインフレームが表示されませんでした。 これはsafari自体の使用のせいなのでしょうか? それとも私のsafariの設定の問題なのでしょうか? ちなみにIEやOperaだと正常に表示されます HTMLを抜粋すると <HTML> <HEAD> <TITLE>テスト</TITLE> </HEAD> <BODY> <table border="1" style="width:100%;height:100%;" cellpadding="5" cellspacing="0"> <tr><td> <div style="top:0px;left:50px;" > <table align="right"width="100%" height="100%"><tr><td> <iframe src="home.html" name="main-window" frameborder="0"width="100%" height="100%" scrolling="out"><p>インラインフレームを使用しています。見るにはインラインフレームをサポートしているブラウザが必要です。</p></iframe> </td></tr></table></div> </td></tr> </table> </BODY> </HTML> となっています。 本来はページを上下3段に分け真ん中の段にインラインフレームを入れようとしています。 どうかお力添えをお願いします。

    • ベストアンサー
    • Mac
  • インラインフレームでのクッキーについて

    インラインフレームをサイトで使用しているのですが、 インラインフレームって、更新を押すと、最初に指定したページ  <iframe src=a.html></iframe> だと a.html に戻ってしまうじゃないですか。 それをクッキーを使用して、更新を押しても現在見ているページを表示したいのですが。(クッキーでできるのかな?) できますでしょうか?教えてください。 また、別の方法でも、上記が可能ならば、教えてください。お願いします。 iframe名を、fffff  IDを、fffffid iframeをおくページを、index.html iframeで最初に表示されるページを、a.html リンクでiframe内に表示されるページを、b.html としておきます。

  • インラインフレームで表示されるページのタイトルを取得したい。

    よろしくお願いします。 インラインフレームを利用したWebページを作成しています。 FLASHでボタンつくったボタンをクリックすると、 インラインフレームの中の表示が切り替わるようになっています。 そこで、どうしてもそのインラインフレームに表示される ページのタイトルとファイル名を取得したいのですが、 何かよい方法はないでしょうか? <div id="contents"> <iframe src="sample.html" name="frame" width="800" height="600" frameborder="0"> インラインフレーム機能を使用しています。インラインフレーム対応のブラウザで試してください(*´∀`) </iframe> </div> リンク先は、FLASHのボタンにつくっています。 インラインフレームの表示内容がが切り替わった時に、 sample.html ⇒ hoge.html hoge.htmlのタイトル名とファイル名を親フレームから 呼びだしたいと思っています。 よろしくお願いします。

  • HTMLアプリでインラインフレーム間リンクの表示

    HTMLアプリケーション(hta)で インラインフレームにリンクボタンを置き、 別のインラインフレームにリンク先を表示する ことができるか教えてください。 ※IE6を使用しています。 HTMLタグを書くと、フレーム内のリンクをクリックすると 別ウィンドウが開いてしまいます。 ただし、フレーム外のリンクであればリンク先の表示ができます。 また、拡張子をhtmに変更すればすべて想定通りの動作をします。 記述に誤り、もしくは良い方法があれば、教えていただけませんでしょうか。 よろしくお願いします。 ------------ aaa.hta <a href="http://www.yahoo.co.jp" target=iframe2>aaa</a> <iframe name="iframe1" src="a_1.htm"></iframe> <iframe name="iframe2" src=#></iframe> a_1.htm <a href="http://www.yahoo.co.jp/" target="iframe2">click!</a> ------------

    • ベストアンサー
    • HTML
  • インラインフレームでpdfファイルを出すhtmlを作りました。

    インラインフレームでpdfファイルを出すhtmlを作りました。 pdfの拡大・縮小率をhtmlで制御したいのですが、やり方を教えてもらえますでしょうか? <TITLE>サンプル</TITLE> </HEAD> <BODY> <IFRAME src="あ.pdf" width="500" height="500"> このページはインラインフレームを使用しています。</IFRAME> </BODY> </HTML>

    • ベストアンサー
    • HTML
  • インラインフレーム内へのリンク

    質問させて頂きます。 インラインフレーム内へのリンクが上手くいかなくて困っています。 name="main" でインラインフレームに名前を付け、外部からはtarget属性でtarget="main"と指定してリンクをはっているのですが、どういうわけだか新しいウインドウが開いてしまいます。 ソースをのせておきますので、どこがいけないのか御指導頂けないでしょうか。お願い致します。(暫定的にYAHOO!にリンクさせています) 以下ソース↓ <html> <head> <title>インラインフレーム</title> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> </head> <body bgcolor="#FFFFFF"> <table width="500" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td height="17"><a href="http://www.goo.ne.jp" target="main">YAHOO!</a></td> </tr> <tr> <td height="300"><iframe border="0" frameborder="0" marginheight="0" marginwidth="0" name="main" scrolling="yes" style="border:solid 1pt cc0000" src="http://www.yahoo.co.jp" width="500" height="300"></iframe></td> </tr> </table> </body> </html>

    • ベストアンサー
    • HTML
  • インラインフレーム

    初めまして。初歩的なことかもしれませんが、 よろしくお願いいたします。 私のHPは、メニュー部分をインラインフレームを使っています。 最初は、そんなにメニュー項目がなかったので、高さ設定をそんなに大きく取ってませんでしたが、メニューの項目を追加していくにあたり、設定していた高さでは足りなくなりました。 スクロールにはしたくありません。 毎回、高さ設定をしなおさずに、うまく入れられることは出きますでしょうか? ちなみに、インラインフレームのタグは、 <IFRAME name="menu" border="0" frameborder="0" marginheight="0" marginwidth="0" src="menu.html" width="143" height="1600" scrolling="no" title="メニュー">このページはインラインフレームを使用しています。</IFRAME> です。 よろしくお願いいたします。

  • インラインフレーム+ランダム表示

    インラインフレームの中をランダム表示させたいのです。 そこで、大元のページに <iframe src="○○○.html" width="570" height="300"name="AAA"align="left" frameborder="no" scrolling="no" > このページはインラインフレームを使用しております。 未対応ブラウザは閲覧できませんのでご了承下さい。 </iframe> と記述し、○○○.htmlの中には <html> <head> <title></title> <script language="JavaScript"><!-- jpURL = [ "tk1.html", "tk2.html", "tk3.html", "tk4.html" ]; n = Math.floor(Math.random() * jpURL.length); document.write('<frameset>'); document.write('<frame src="'+jpURL[n]+'" name="rightFrame">'); document.write('</frameset>'); // --></script> </head> </html> という記述をしています。 このようにランダムに表示できるように記述すると、左横に出る窪んだようになる縦線(frameborder!?)と縦のスクロールバーが出てしまいます。 これを表示しないようにしたいのですが、どうやっても消す事が出来ません。 これを無くし自然な感じにするには、どのようにしたら良いでしょうか? 是非教えてください。 宜しくお願いします。

    • ベストアンサー
    • HTML
  • インラインフレーム切り替え&アンカーについて

    インラインフレームを切り替える際、 iframeにnameを設定して、aタグにtargetで指定すれば切り替わる ことまでは突き止めたのですが、 切り替えをしたい画像ボタンと、 iframeが離れているので、 まず、iframeがある部分までアンカーで飛び、 かつ、iframe内も同時に切り替える方法を知りたいのですが、 もしご存知の方がいらっしゃったらご教示いただければ幸いです。 よろしくお願いいたします。

    • ベストアンサー
    • HTML