HTML初心者がフレームのあるホームページで日記ページに自動ジャンプする方法

このQ&Aのポイント
  • HTML初心者がフレームを使用したホームページを作成しています。日記ページに直接アクセスした場合に自動でトップページにジャンプする方法について教えてください。
  • 自動ジャンプ機能を実装するためにはJavaScriptを使用する必要があります。日記ページのメタタグにリダイレクトするコードを追加することで実現できますが、フレーム内のメニューからアクセスした場合にはジャンプしないように条件分岐を行う必要があります。
  • 以下のようなJavaScriptコードを使用することで、日記ページが直接アクセスされた場合にのみトップページにジャンプするようになります。 ```javascript if (window.location.href.match('日記のURL')) { window.location.href = 'ホームページのURL'; } ```
回答を見る
  • ベストアンサー

ページの自動ジャンプ

ホームページを初めて作成しています。 HTMLの知識もほとんど無いため、ネットでいろいろ調べて勉強しながら作ってます。 とりあえずフレームのあるHPを作成したいので、フレーム分けのindex.htmlと、左側メニューのmenu.html、右側のメインページのmain.htmlと作成しました。 右側のメインページには、日記とか掲示板とかいろいろ作っていきたいのですが、例えばフレームのメニューからでなくいきなり日記のページにダイレクトにアクセスしてきた場合、自動でトップページであるindex.htmlに飛ばす方法ってないのでしょうか? つまり、フレームのあるトップページ(index.html)に自動で飛ばしたいのです。 例えば日記のページに、 <meta http-equiv="Refresh" content="0; URL=http://www.XXX.com/index.html" target="main"> なんて記述してみたのですが、こうすると日記ページが自動でindex.htmlへ飛ぶには飛ぶんですが、2つ問題が出てしまいました。 1つはフレーム左側のメニューから通常通りページをクリックしてメインページを開いた場合、フレームが2段になってしまいます(同じメニューが左に2列表示されてしまいます) 2つ目は、左のフレームメニューから日記をクリックして日記のページを開こうとしてもやはりすぐにindexに飛ばされてしまう自体になってしまいました。つまり日記ページが見れません。 日記ページの最初にmetaタグでindex.htmlに飛ばしてしまってるのだから、当たり前といえば当たり前ですけど。 直リンされた時だけ飛ばして、フレーム左側のメニューから来る時は飛ばないで日記を表示させたいのですが。 こういうのって普通はjavascriptとか使ってやるものなんでしょうか? やり方を是非教えて頂きたいです。

  • CSS
  • 回答数1
  • ありがとう数1

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

  • ベストアンサー
  • HIRSYU
  • ベストアンサー率51% (45/87)
回答No.1

JavaScriptを使うことになりますね。 http://www.openspc2.org/reibun/javascript/frame/023/

kwsp777
質問者

お礼

ありがとうございます!

関連するQ&A

  • フレーム内のページ表示について

    メニューとメインでフレームのページを作っています。 メインページに直接訪れた人の為に、「メニューが表示されない場合はクリック」とフレームページのリンクを作ってあります。<A href="index.html" target="_top"> フレームページ(メニュー)は表示されるのですが、次にメニュー項目をクリックすると、全画面でメインページがでてしまい、またメニューが見えなくなってしまいます。 ふつうにフレームページ(index.html)を開いた場合は、ちゃんとメインフレーム内に各ページが表示されるので、なぜメインページのリンクからだとそれができないのかがわかりません。 フレーム名はメニュー=menu メイン=mainとして、メニュー各項目のリンクは<A href="001.htm" target="main">としてあります。 説明が下手でごめんなさい。よろしくお願いします。

    • ベストアンサー
    • HTML
  • フレーム内ページかの判別方法

    こんにちは。 ホームページを作成、公開しております。 フレーム構造を使っており左側にメニュー(menu.html)、右側に内容(main.html)があるものとなっています。 (フレームページは、index.html) このページを検索エンジンに登録したのですが、フレーム内のページ(例えばmain.html)が検索に引っかかることもあり、メニューが表示されないので効率的にブラウズできません。 そこで、そのような表示がされた場合に自動的にフレームページ(index.html)へジャンプするようにしたいのですが、なにか方法はあるのでしょうか? ちなみにサーバーでは、各種スクリプト,CGI,SSI,ASP,PHPが利用可能です。

    • ベストアンサー
    • HTML
  • topページから開いたメインページが・・

    fc2ホームページでホームページを作成しています。 初心者です。右も左も分かりません。 ”topページから開いたページ”が本来の動きをしてくれないのです。 本来の動きというのは 「topページからホームページのメイン画面に移る↓ 移ったメイン画面は二分割で左側がメニューで右側に表示される」 というものなのですがtopページから開いたメインページ内のメニューで項目を選択しても 右側には表示されずに新しくもうひとつページが開かれ、その新しく開かれたページが メインページとしての本来の動きをしてしまうんです。 ※左側のメニューは右側に表示されるようにしています。 どうしてこうなってしまうのか分かりません。それゆえ、どうすればよいのかも分かりません。 どなたか教えてください!

  • (IE8)FRAMEで指定したページが表示されません

    IE7からIE8に更新してからフレームの表示が不可解なものになりました。 現象: index.htmlの中で以下のように指定しています。 <FRAMESET COLS="160,*" FRAMEBORDER=NO BORDER=0> <FRAME SRC="./menu.html" NAME="menu"> <FRAME SRC="./top.html" NAME="main"> </FRAMESET> このindex.htmlを表示すると左側フレームのmenu.htmlは表示されますが、 右側フレームにはtop.htmlではなくmenu.htmlからリンクしている別のページが 表示されます。 IE7の時は普通に左にmenu.html、右にtop.htmlが表示されていました。 IE8でもIE7と同様に表示するようにするにはどうすれば良いでしょうか?

  • フレームページへのリンク

    トップページ(フレームなし)から、フレームページへのリンクがうまく表示されません。 トップページのリンクボタンをクリックすると、左側フレームのメニューは表示されますが、右側の内容のページが「Not Found」で表示されません。 が、表示されたフレーム左側のメニューをクリックすると表示されます。 トップページから、左右両方表示させるのにはどうすればよいのでしょうか? よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • 上下に分けたフレームページ。アップすると下のページだけ表示される・・・

    仕事でホームページを作っています。 更新がメインですが、初心者で担当は一人なので、質問させてください。 トップページは左右に分かれたフレームページです。 右側のメインのページを、上下に分けたいページがあります。 フレームはindex.htmという名前で保存し、上のページをheaderという フレーム名をつけてheader.htmとし、下のページをfooterという名前にし、 footer.htmとして保存しました。 つまりページは3ページあります。 index.htmをダブルクリックしてInternet Explorerで開いた場合と、Dreamweaverなどで 開いた場合は、きちんと上下に分れたページになるのですが、 トップページ左フレームのメニューボタンにindex.htmのリンクを入れて サイトを開くと、右側のメインページにはフレームなしの上、footer.htmの ページだけしか開かないのです。 保存方法はDreamweaverでフレームを新規保存し、その後で「すべて保存」 にしています。 わかりづらい質問で申し訳ありません。思い当たることがありましたら アドバイスお願いいたします。

  • 左側にメニュー欄を作って、右側ページはメニューをクリックする度にページを変えたい

    タイトルがかわりにくかったらすみません。 フレームを使わずに、1つのページで 左側に長細いメニュー欄を作りたいと思っています。 そして、右側のページは、左のメニューをクリックすると、ページが切り替わるようにしたいのです。 色々検索して、フレームを使って上のようなページの切り替えはできたのですが、フレームを使わずに1つのページで切り替える方法が、どうしてもわかりません。 どうぞよろしくお願いいたします。 失礼します。

  • 教えて下さい。フレームのページの編集が出来ない訳。

    ここ2、3日ろくに寝もしないでこんな時間までやってた甲斐合ってなんとなーくhtmlも読めるようになってきた気がします。 素人ですがどなたかまたお付き合いください。 テンプレートを加工してwebを作っているんですが、 肝心のトップページであるindex,htmlの編集が出来ません。 htmlの作成はもじらのコンポーザーでやっています。。 トップページを読み込んで開くと「不明な理由でこのページは編集出来ません」とメッセージが出ます。ソースを開いて見てみると 下のようなものしかなく、なにか出来ないかと思って頭の部分を入れてみたりしたのですが、次には 「<body>タグがないからです」ってメッセージが出ます。 このトップページってルールだけなんですよね?<body>タグなんてどこに入るんでしょうか? ココを編集してやりたい事は、縦の3分割になっているうちの "index-left.html"の割合が大きすぎて、メニューバーである真ん中のページを足すとほぼ半分ウィンドウを占めてしまい、IEなどに至ってはメインページである右側部分がほとんど見えなくなってしまいます。 それで、左側の"index-left.html"の割合を少なくしたいのですが、 それも重ねてわかりますでしょうか。 環境はMacOSX、ブラウザは基本的にサファリです。IEもネスケももじらもFIREFOXも持ってます。 何を書き込めばいいのか教えて下さい! (このページにあったソースはこれで全部です。) <frame name="l" src="index-left.html"  frameborder="0" scrolling="no"><frame name="menu" src="index-menu.html"  scrolling="no" frameborder="0"><frame name="main" src="index-main.html"  frameborder="0" scrolling="auto"> <noframes><BODY> <p>このページにはフレームが使用されていますが、お使いのブラウザではサポートされていません。</p> </BODY> </noframes>

  • FFFTPについて

       FFFTPについてです。  アップロードした<index.html>をクリックしても「このウェブページは見つかりません」と表示されます。  <index.html>はフレーム構成で、フレームの左にメニューがあり、右側にトップページがあります。それぞれ<menu.html>,<top.html>としているのですが、これらをクリックすると正常に表示されます。その後<index.html>をクリックすると正常に表示されます。  つまり、一度クリックして開いたページは<index.html>に表示されるのですが、そうでないページは表示されないのです。  しかし一旦FFFTPを閉じると<index.html>にはまともや何も表示されなくなります。  どうすればよいのでしょうか? どなたかわかるかた教えてくさい。

  • 十字キーが出てきてページがスクロールできません。

    調べてみたのですがなにが原因かよくわかりません。 ホームページで、縦2分割フレームを使っています。 左はメニュー。右にリンク先のページが表示される形になります。 そこで、右のページを日記に設定したのですが、 (INDEXから飛ぶと左にメニュー、右に日記が表示できるように) 日記は表示されますがマウスキーが十字キーに変化し、 ページをスクロールさせることができません。スクロールバーも無反応です。 フレームの境界線には(右側に)斜線のような線がでます。 レンタル日記、Pixivのブログどちらも同じような状況に陥ります。 ページを開いて自然に右側をスクロールできるようにするにはどうすればよいでしょうか。 特に目立ったタグはありませんでした。FC2をつかっております。 ご指導をお願いいたします!よろしくお願いいたします。

    • ベストアンサー
    • HTML

専門家に質問してみよう