• ベストアンサー

フレームについて質問です。

フレームでないトップページに各コンテンツのメニューをおいて、そのメニューをクリックして各コンテンツにリンクでとんで行きたいんですが。 その各コンテンツをフレームで・・・ってことはできるのでしょうか? 私の知っている範囲では、不可能そうで、テーブルかスタイルシートで、フレーム風にデザインするしかなさそうなのですが、もしもなにか方法があったら教えて下さい。よろしくお願いします。

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

  • ベストアンサー
  • ngsvx
  • ベストアンサー率49% (157/315)
回答No.5

最初に、再度確認しますが、 ようするに、「フレームのファイルをページ毎に作りたくない(面倒)」ということですよね? そうだということで、話を進めます。 それは、HTMLだけでは不可能です。 JavaScriptを使えばうまくいくかもしれません。 *******   menu.html  ********** <html> <body> <a href="frame.html?link1.html" target="a">link1</a><br> <a href="frame.html?link2.html" target="a">link2</a><br> </body> </html> *******   frame.html  ********** <html> <frameset rows=100,*>' <script language=javascript> document.write('<frame src=' + location.search.substr(1) + ' name="a"></frame>'); </script> <frame src="dmy.html" name="b"></frame> </frameset> </html> これで、 1.メニューの「link1」をクリックすると、別のフレームが開く。   (フレームの上部はlink1.html,下部はdmy.html) 2.メニューの「link2」をクリックすると、別のフレームが開く。   (フレームの上部はlink2.html,下部はdmy.html) となると思います。 ポイントは、menu.htmlのリンク先の定義と、frame.htmlのスクリプト処理です。 *試していないので、保証はできません。

chiga
質問者

お礼

ありがとうございました。 やってみたのですが、上記のスクリプトだけではうまく動作しないようでした。 でもとてもヒントになりました。私もJavaScriptは勉強中なので、本とにらめっこしながら、もうちょっと 考えてみます。本当にありがとうございました。

その他の回答 (4)

  • kosa
  • ベストアンサー率25% (379/1464)
回答No.4

すでに作ってあるフレームなしのページに、各メニュー項目がついたページとひっつけて、あたかもフレームですってことですよね? これは問題なくできますよ!!

  • ngsvx
  • ベストアンサー率49% (157/315)
回答No.3

どうもよくわからないのですが、 もしかしたら、 1.トップページの「リンク1」をクリックすると、  「ページ1(フレーム付き)」へジャンプする。 2.トップページの「リンク2」をクリックすると、  「ページ2(フレーム付き)」へジャンプする。 3.「ページ1」と「ページ2」のフレームは同じファイルである。 ということですか?

chiga
質問者

補足

1.トップページの「リンク1」をクリックすると、  「ページ1(フレーム付き)」へジャンプする。 2.トップページの「リンク2」をクリックすると、  「ページ2(フレーム付き)」へジャンプする。 3.「ページ1」と「ページ2」のフレームは同じファイルである。 ・・・そうなんです、まさにそのとおりなんです。 そんなのは可能ですか?私の知ってる範囲では、不可能な気がして。(大手のサイトにも、フレーム風だけどテーブルで作成してありますよね?できないからテーブルで作るわけでしょうか?)違うファイルをたくさん作るしかないのでしょうか?教えて下さいませんか?

  • ayao123
  • ベストアンサー率35% (11/31)
回答No.2

> その各コンテンツをフレームで・・・ってことはできるのでしょうか? できますよ。 リンク先をフレーム設定ページにすれば良いのです。 あとはリンク先のターゲットを元のページの特定のフレームにすれば良いのではないでしょうか。

chiga
質問者

お礼

アドバイス、ありがとうございました。

  • arukamun
  • ベストアンサー率35% (842/2394)
回答No.1

こんにちは フレームではないページのリンクをクリックするとフレームのページになることは問題なく出来ますので、不可能といわれている理由から良くわかりませんが。 フレームにしたい場合は、 <FRAMESET>とかの<FRAME>タグの入ったhtmlファイルがあって、そのファイルを開くと、<FRAME>タグのSRC=で指定されたhtmlファイルが、NAME=で指定されたフレーム領域に表示されます。 ということは、各コンテンツ様のフレーム用のhtmlファイルを作って、それをトップページからリンクしてあげれば良いでしょう。

chiga
質問者

補足

さっそくのお返事、ありがとうございます!! フレームではないページのリンクをクリックするとフレームのページになることは問題なく出来ますので・・・というのは、理解できるし、作ったこともあるのですが。 例えば、トップページにもメニューがいくつかあって(作品や自己紹介など)トップページのそれをクリックすると、それぞれのページに飛ぶことが出来て、そのそれぞれが、同じフレームで分割されている・・・というのが出来るのかなあ?と思ったのです。 わかりにくくて申し訳ありません。 一般的にHTMLで作ると、トップページからはフレームで分割されている任意のひとつのページへしか行けないですよね? (私の知ってる範囲なんですが) フレームで分割したファイルをたくさん作って、それぞれにリンクさせればよい、ということですか?

関連するQ&A