- 締切済み
フレーム表示のHPの途中ページへのリンク
私のHPはフレームを使用しています。 が、その中のあるページに、他のページからリンクを張るということになりました。 普通にそのページのURLを使うと、フレームが消えて表示されてしまいます。 でも、フレームをつけて表示するようにしたいのです。 <具体的に言うと> index.html にフレーム設定がしてあって、menu.htmlとその他に分かれている状況です。 リンクしたいのは、link.htmlのページです。 link.htmlとmenu.htmlを両方表示させるような、URLというのはあるのでしょうか。 わかりにくかったらすいません。 どう表現していいのか、よくわからなくて・・・ ちなみに、menu.htmlとlink.htmlを表示した画面で、IEのお気に入りにいれると、 ちゃんと両方とも表示されるのですが、プロパティを見ても、TOPのURLしか出ないのです。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- azarashimh
- ベストアンサー率30% (4/13)
えぇと、、下の方も述べているように menu.html || link.html というようにしたいんですよね。。。。 ぜんぜん見当違いだったらごめんなさい。 それではこれで良いのではないでしょうか。 <A href="link.html" target="フレームの名前">ここに文字</A> でも皆さんの回答の仕方が難しいので やはり私の見当違いでしょうか。 フレームの名前を入れればいいと思うのですが。
- d-3
- ベストアンサー率42% (16/38)
外部からリンクするときや、ブックマーク登録時の不具合は、フレームを使用した際の最大のデメリットですね。 以下|はフレーム分割と考えて読んでみてください。 要するに、他のサイトから <a href="http://www.***.com/link.html">などとして linkのページにリンクしてもらって、リンクからきたときに |menu|link| と表示して欲しいのに |link| のみが表示されてしまうのですよね。 かといって、index.htmlを指定すると |menu|indexで指定しているページ| となって、linkが表示されないということですね。 そこで、 >link.htmlとmenu.htmlを両方表示させるような、URLというのはあるのでしょうか。 という疑問が沸き起こったということでしょう。 残念ながら、HTMLのみではそのような仕組みはできないのです。するとすれば、すでに回答されているように、link_index.htmlなどフレーム分割定義用の新しいHTMLを作成し、 |menu|link| となるような指定をするしかありません。link_index.htmlにタイトルをつければ、ブックマークにもそのタイトルが表示されると思います。 ただ、そのmenuから他のページを右に表示した際も、そのタイトルのままになってしまいますので、結局menuに載っている項目すべてにフレーム分割用のHTMLを用意しなければなりません。これは大変面倒です。 JavaScriptを使う方法でも可能ですが、OFFにして閲覧している場合も結構多いので、そういったナビゲーション上重要なところに使うべきではないと思います。 一番いい方法は、フレームがなかった場合でも正常に機能するようなサイト構成を考えることです。 たとえば、検索から各個のページにきた人のためにも、各ページに<a href="index.html" target="_top">トップページ</a>というようなリンクを用意しておくなどです。 一度「フレームを使用できない」ことを前提にしてサイト構成を見直し、それで問題なく閲覧できることを確認したのち、より便利にするオプション的な要素としてフレームを追加してみてはどうでしょう? おすすめは、各ページに <a href="index.html">トップページ</a>>リンク のように、今いる場所がわかるようなナビゲーションを設置することです。これなら、フレームに表示されているものとの重複も少ないのでいいと思いますよ。
HTMLやJavaScriptでそういった動作をさせる記述方法は私にはわかりませんが、とりあえずの解決策として、そこで開きたいページを開くように指定したフレームセットのHTMLを新たに用意して、他のページからはそれにアクセスするようにしてはいかがでしょうか。 例えば、トップページのindex.htmlを別名で保存して、メイン側のフレームでlink.htmlを開くようにsrc属性を書き換えておけば、そちらのファイルにアクセスすることで一応ご希望の動作になると思いますよ。 link.html以外のページをそのフレーム上で操作することにも問題は起きないと思います。(ただ、ブラウザのアドレス欄にはそのフレームセットしたHTMLのURLが表示されることになりますが…) それが不適切な場合は、link.htmlページにトップページへ移動するリンクを張っておくような少々消極的な対策しかないような気がしますが… 見当違いでしたら、ごめんなさい。