- ベストアンサー
改・キーボードナビゲーション
http://oshiete1.goo.ne.jp/kotaeru.php3?q=762151 にて質問し、解決したに見えたのですが、確認もせず閉じた為、再度投稿させて下さい。 ページトップにフレームファイルを置き、 <frameset cols="250,*" frameborder="0" framespacing="0"> <frameset rows="16,*" frameborder="0" framespacing="0"> <frame src="***.html" name="0" SCROLLING="NO" NORESIZE> <frameset rows="25,*" frameborder="0" framespacing="0"> <frame src="***.html" name="1" SCROLLING="NO" NORESIZE> <frameset rows="51,*" frameborder="0" framespacing="0"> <frame src="***.html" name="2" SCROLLING="NO" NORESIZE> <frame src="***.html" name="3" SCROLLING="NO" NORESIZE> </frameset> </frameset> </frameset> <frame src="***.html" name="4" SCROLLING="NO" NORESIZE> </frameset> とします。 NAME“0”のページがメニューで、ここをクリックするとNAME“1”に開かれる仕組みです。 NAME0に、 function checkNavigation() { if(event.keyCode==49)location.href="NAME1に開くページ"; } window.document.onkeydown = checkNavigation; と書きます。 前投稿では、「1.location.~」とすればOKだとなっていたのですが、確認した所何故か機能しませんでした。 NAME0をアクティブページにして“1”を押下してみたり、試して見たのですが駄目でした。 どうしたら良いのでしょうか。お願いします。
- vrok
- お礼率88% (95/107)
- JavaScript
- 回答数3
- ありがとう数4
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
前回の投稿を見て、自分のHPに実際に搭載してみました(笑) で、スクリプトは「フレームファイル」に定義しないといけません。 でないと、どこにフォーカスが当たっているかによって、スクリプトが動作したりしなかったりします。 それから、name="" の値は、必ずアルファベットから始まるようにしてください。たとえば "n0"、"n1" とか。 でないと、JavaScript から巧くアクセスできません(オブジェクトが中途半端に生成されてしまうため)。 フレームの1つを name="n1" と定義した場合、 window.n1.location.href="wwwww" と記述することによって、"wwwww" ページに飛びます。
その他の回答 (2)
- Struts
- ベストアンサー率48% (29/60)
それぞれのnameをpage0、page1のようにし parent.page1.location.href="開くページ"; でどうでしょう?
お礼
回答No.1以降のname属性は「dk0・dk1・dk2・dk3・dk4」にしましたので、 恐らく同じ結果に思います。 わざわざすみません。回答有難う御座います。
フレームにつけた名前を変えてみてください。 JavaScriptでは、フレーム名などのname属性に、数字から始まる文字列は使用できないはずです(数字のみや、000frameなどはNG)。 数字以外の文字から始まる名前に変える必要があるでしょう。 また、別フレームを指定する場合は、いきなりフレーム名を指定するのではなく、フレームの階層も明示する必要があるでしょう。 parent.ターゲットのフレーム名.location.href="URL"; という指定に変えてみてください。
お礼
name属性を“dk*”に変更した所、しっかりと機能しました! ただ、タグが打ち込んであるページがアクティブになっていないと機能しない様で、 一度name属性dk1の所へ開いた後は効果が無く、その後にdk2、dk3と続けて行く事は無理みたいでした。 同じウインドウ内に操作専用のページを入れれば続けて機能してくれる様なので、 それを考慮してみようかと思います。 回答有難う御座いました。
関連するQ&A
- ブラウザによってフレームの表示が異なるのですが..
はじめまして。 現在下記のような形のHPを制作しているのですが、フレームが難しくてなかなか進めません。 ブラウザやそれぞれの環境によって見え方が違ってしまいます。 私の環境では真ん中にぎゅっと詰まってスクロールが出てしまうような小さな見え方になってしまっています。 どの環境で見ても統一させるにはどのようにしたら良いのでしょうか。 ------------------------------ 上の固定バー ------------------------------ メニュー|内容 | | | | ------------------------------ 下の固定バー ------------------------------ ソースは以下のように組みました。 <frameset rows="10%,*" cols="*" framespacing="0" frameborder="no" border="0"> <frame src="Margin/Index.html" scrolling="No" noresize title="topFrame"> <frameset rows="*,230" cols="*" framespacing="0" frameborder="no" border="0"> <frameset cols="215,*" frameborder="no" border="0" framespacing="0"> <frame src="Margin/Index.html" scrolling="No" noresize title="menuBarFrame"> <frameset cols="*,25%" frameborder="no" border="0" framespacing="0"> <frameset rows="64,*" frameborder="no" border="0" framespacing="0"> <frame src="topbar/topbar.html" scrolling="No" noresize title="topBarFrame"> <frameset rows="*,41" cols="*" framespacing="0" frameborder="no" border="0"> <frameset rows="*" cols="178,*" framespacing="0" frameborder="no" border="0"> <frame src="menu/menu.html" scrolling="No" noresize title="leftFrame1"> <frame src="top/top.html" name="main" title="topFrame"></frameset> <frame src="bottombar/bottomBar.html" scrolling="No" noresize title="bottomFrame1"> </frameset> </frameset> <frame src="Margin/Index.html" scrolling="No" noresize title="rightFrame"> </frameset> </frameset> <frame src="Margin/Index.html" scrolling="No" noresize title="MenuBarFrame"> </frameset> </frameset> <noframes> ------------- また、現在フレームは推奨されないのも知っているので、 オススメの組み方がありましたら教えていただけませんでしょうか。 HTML等に関してまったくの初心者ですので、判り易く教えていただけたら大変有り難く思います。どうぞよろしくお願いします。
- ベストアンサー
- HTML
- 画面の四分割の方法について
教えていただきたいのですが、↓で作成した画面の最下部にbottom(titleと同じ幅で画面の下部)を作りたい場合は、どのように追加記述すべきなのでしょうか? いろいろ試しているのですが上手くいかないのです(汗 <frameset rows="90,*" border="0" frameborder="0" framespacing="0"> <frame name="title" src="title.html" scrolling="NO" noresize> <frameset cols="180,*" border="0" frameborder="0" framespacing="0"> <frame name="menu" src="menu.html" noresize> <frame name="body" src="body.html"> </frameset> </frameset> 宜しくお願いいたします。。。
- ベストアンサー
- CSS
- フレームページが崩れる。。。
フレームページを使っているのですが、見る人によってはページの一部が切れて 見えない部分もあるらしいです。ブラウザの大きさを変えてもレイアウトだけは 崩さない為には、どこにどんなタグが必要なんですか? 現在のフレームの親ページのソースです。 <FRAMESET rows="30%,70%" frameborder="NO" border="0"> <FRAME src="ue.html" scrolling="NO" noresize> <FRAMESET cols="20%,80%" frameborder="NO" border="0"> <FRAME src="side.html" scrolling="NO" name="menu" noresize> <FRAME src="main.html" name="main" noresize> </FRAMESET> <NOFRAMES>
- ベストアンサー
- HTML
- フレーム内から親ウィンドウにロケーション?
こんにちは。 どなたかよい解決策をご存知でしたら教えてください。 フレームで切られたウィンドウの一部のフレームから、PHP(ver.3)でページをロケーションで呼ぶと、そのフレームの中に呼んだページが表示されてしまいます。 JavaScriptは使わずに、親ウィンドウにページを表示させることは出来ないでしょうか、、、 よろしくお願いいたします。 以下はイメージサンプルです。 ■frame.html <html> <head><title>フレームセット</title></head> <frameset cols="100,*" frameborder="NO" border="0" framespacing="0"> <frameset name="left" rows="60,*" frameborder="NO" border="0" framespacing="0"> <frame name="a" noresize scrolling="NO" src="./test1.html"> <frame name="b" noresize src="./test2.html"> </frameset> <frameset name="right" rows="44,*" frameborder="NO" border="0" framespacing="0"> <frame name="c" noresize scrolling="NO" src="./test3.html"> <frame name="d" noresize src="./locat.php3"> </frameset> <noframes> このページはフレーム対応のブラウザでご覧ください。 </noframes> </frameset> </html> ■locat.php3 <? header("Location: ./test4.html"); exit(); ?> ■test1.html <html> <head><title>テスト1</title></head> <body> 左上 </body> </html> ■test2.html <html> <head><title>テスト2</title></head> <body> 左下 </body> </html> ■test3.html <html> <head><title>テスト3</title></head> <body> 右上 </body> </html> ■test4.html <html> <head><title>テスト4</title></head> <body> このページをウィンドウ全画面に表示 </body> </html>
- 締切済み
- PHP
- フレームのホームページのサイズ指定の方法
●フレームのあるホームページを作ろうとしています。上段と下段左、下段右という3つの構成です。htmlでnoresize指定してもPC上でブラウザの窓を引っぱって大きさを変えると、それに連れて下段の幅が変わって(下段右のページが右にずれて)見えてしまいます。(IE6.0で見るとサイズ指定・固定されて見えるのですが、ネットスケープでは幅が違って見えます)これをどのPCで見ても、ブラウザの大きさがどうでも同じように(幅が変わらず)見せる方法を教えて下さい。 ●フレームのページのhtmlは以下のように記述しています。 <frameset border="0" bordercolor="#dddddd" frameborder="no" framespacing="0" rows="130,*"> <frame name="ue" noresize scrolling="no" src="xxxxx.html"> <frameset cols="202,580*" border="0"> <frame src="yyyyy.html" name="hidari" noresize scrolling="yes" > <frame src="zzzzz.html" name="migi" scrolling="yes" noresize > </frameset> ●いろいろ調べたのですが、解決できず、どなたか助けていただけましたら幸いです。何卒よろしくお願いいたします。
- ベストアンサー
- その他([技術者向] コンピューター)
- フレームすくローリング有り/無し
こんにちわ だいぶ前に登録してから、久しぶりに 質問させて頂きます。 フレームページの作成をしております。 右がメインで、左がメニューの一般的なものですが、 左のメニューフレームについて、、、 縦幅はスクロール有り 横幅はスクロール無しにし、幅を固定したいのですが HTMLタグ辞典や調べて探しきれませんでした。 既に同じ質問が出ていたら申し訳ありません、 何卒宜しくお願い致します。 現在 indexのタグは以下のとおりです。 --------------- <frameset rows="*" cols="150,*" frameborder="NO" border="0" framespacing="0"> <frame src="left_frame.htm" name="leftFrame" scrolling="auto" noresize> ↑↑↑↑↑↑↑↑ auto にすると、横も縦も スクロール出てしまいます;_; <frameset rows="82,*" cols="*" framespacing="0" frameborder="NO" border="0" Marginwidth="5"> <frame src="frame_above.htm" name="topFrame" scrolling="NO" noresize> <frame src="main.htm" name="mainFrame"> </frameset> </frameset> <noframes><body> ---------------
- 締切済み
- HTML
- フレームで表示すると
自分でフレームを組んだのですが、 IEだと大丈夫だったのですが、 NN4.7で崩れてしまいました。 フレームの間に白い線が入ってしまいます。 原因がわからず、ここに質問しております。 一つの画像を縦3つに分け、真ん中は横3つに分け、 合計5マド構成のフレームにしたいと思っています。 インラインフレームのような感じです。 インラインフレームだとNNでは表示されないので、 このような形にしようと思いました。 下記のようなソースでは何か問題があるのでしょうか。 教えてください、宜しくお願いします。 <frameset rows="*,*,*" frameborder="0" framespacing="0" border="0"> <frame src="top.htm" marginwidth="0" marginheight="0" scrolling="no" noresize> <frameset cols="*,*,*" frameborder="0" framespacing="0" border="0"> <frame src="midddle_left.htm" marginwidth="0" marginheight="0" scrolling="no" noresize> <frame src="midddle_midddle.htm" marginwidth="0" marginheight="0" scrolling="yes" noresize> <frame src="midddle_right.htm" marginwidth="0" marginheight="0" scrolling="no" noresize> </frameset> <frame src="bottom.htm" marginwidth="0" marginheight="0" scrolling="no" noresize> </frameset>
- 締切済み
- HTML
- 横スクロールバーを消したいんです(><)
こんにちは。とっても困っています。 ホームページを作成中ですが横スクロールバーが消えません。以下の プログラムのどこを直したらいいでしょうか。 どうぞよろしく御願いします。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis" /> <title>無題ドキュメント</title> </head> <frameset rows="107,318*" cols="777*,1" frameborder="no" border="0" framespacing="0"> <frame src="vxv.html" name="topFrame" scrolling="No" noresize="noresize" id="topFrame" title="topFrame" /> <frame src="UntitledFrame-23"> <frameset rows="*" cols="122,652*" framespacing="0" frameborder="no" border="0"> <frame src="dfg.html" name="leftFrame" scrolling="No" noresize="noresize" marginwidth="0" id="leftFrame" title="leftFrame" /> <frame src="main.html" name="mainFrame" id="mainFrame" title="mainFrame" /> </frameset> <frame src="UntitledFrame-24"> </frameset> <noframes><body> </body> </noframes></html>
- 締切済み
- HTML
- 横スクロールバーについて
Dreamweavwe8にて作業しています。 製作した画面はフレーム構造のメインコンテンツを表示する部分なのですが、フルCSSにて製作、確認画面でその画面だけを表示すると縦スクロールだけが表示され、横スクロールは通常時は表示しませんが、 INDEXを立ち上げ、フレームの一部としてみた時、横スクロールが表示されます。 それは、縦スクロールが消えるサイズまで広げると消えるのですが、縦スクロールがある間は表示されます。 ページの設定でスクロールは自動にしてあります。 フレームの設定は、 <frameset cols="166,*" frameborder="NO" border="0" framespacing="0"> <frame name="leftFrame" noresize scrolling="NO" src="menu.html"> <frameset rows="135,*" cols="*" frameborder="NO" border="0" framespacing="0"> <frame name="topFrame" noresize scrolling="NO" src="header.html" > <frame name="mainFrame" src="top.html"> </frameset> </frameset> としてあります。 ここで何か設定が必要なのでしょうか? 私が困っているのはtop.htmlのところです。 解りにくくてすいませんが、よろしくお願いします。
- 締切済み
- HTML
- フレームページの隙間
フレームページを作ったのですが、フレームの間の隙間をなくしたのですがどのようになくすのか解りません。どうか教えて頂けないでしょうか。お願します。 実際のソースコート <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <META name="GENERATOR" content="IBM HomePage Builder 2001 V5.0.0 for Windows"> <TITLE>もっくもっく</TITLE> </HEAD> <FRAMESET rows="155,*" frameborder="0" border="0" framespacing="0" framepadding="0"><!-- 上のフレーム --> <FRAME src="osawa1.html" name="1" scrolling="no" noresize topmargin="0" marginheight="0" leftmargin="0" marginwidth="0"> <FRAMESET cols="700,*" frameborder="0" border="0" framespacing="0" framepadding="0"><!-- 左のフレーム --> <FRAME src="osawa2.html" name="2" scrolling="auto" noresize mtopmargin="0" marginheight="0" leftmargin="0" marginwidth="0"> <!-- 右のフレーム --> <FRAME src="osawa3.html" name="3" scrolling="no" noresize topmargin="0" marginheight="0" leftmargin="0" marginwidth="0"> </FRAMESET> <NOFRAMES> <BODY topmargin="0" marginheight="0" leftmargin="0" marginwidth="0">フレーム対応ブラウザでご覧ください。</BODY> </NOFRAMES> </FRAMESET> </HTML>
- 締切済み
- HTML
お礼
「フレームに設置」は盲点でした! 「IFRAMEに使ってみるか...」とは思ったのですが、アクティブページは移動してしまい駄目だろうと試しもしませんでした。 アルファベットからで無いとウマく行かない点も、既に回答して下さった方の物も含め、とても勉強になります。 回答有難う御座います。