
本を参考にして作ってみて、いちおう折りたたみができるようにはなったのですが一つ困っている事があります。
フレームを使って左右にページを分けて、左側をメニューにしています。その左側の折りたたみメニューなのですが項目をクリックして右側にページを表示させると、元に戻ってしまいます。私は一度開いたら自分でもう一度クリックするまで勝手に折りたたまれないメニューを作りたいのです。
現時点では<HEAD>部分に↓これが入っていて
<script language="JavaScript"><!--
vType = ["none","block"];
function tblMenu(tOBJ,dType)
{
Menu = tOBJ.tBodies[0].style;
Menu.display = vType[Menu.display.indexOf("none") + 1];
}
// --></script>
<body>の部分に↓これを入れています
<table border="0" onClick="tblMenu(this)">
<thead><tr><th align="left">
<img src="****.gif"></th></tr></thead>
<tbody style="display:none">
<tr><td><a href="**.html" target="body">項目</a></td></tr>
・
・
・
こんな具合なのですが、これのどこかを直したら勝手に折りたたまれないようになりますか?
もしくは、自分でクリックするまで勝手に折りたたまれたりしない折りたたみメニューの作り方をご存知の方がいましたら是非教えて下さい。よろしくお願いします。
No.2ベストアンサー
- 回答日時:
なぜリンクをクリックすると折りたたまれたかというと、
onClickがテーブルについているので、
開いたメニューをクリックするとテーブル内をクリックされたと同義なので、メニューが折りたたまれてしまうという、ある意味当然の動作をしたのですね。
で、onClickをそのまま<th>につけるとエラーになったりするんですね。
で、いろいろやった結果
<script language="JavaScript">
<!--
vType = ["none","block"];
function tblMenu(tOBJ)
{
Menu = document.all[tOBJ].style;
Menu.display = vType[Menu.display.indexOf("none") + 1];
}
// -->
</script>
</head>
<table border="0">
<thead><tr><th align="left" onClick="tblMenu('tbm')">
<img src="****.gif"></th></tr></thead>
<tbody id='tbm' style="display:none">
<tr><td><a href="tb.htm" target="main">項目</a></td></tr>
<tr><td><a href="tb.htm" target="main">項目2</a></td></tr>
</tbody>
</table>
こんな感じで落ち着きました。
早速、教えて頂いた通りに変えてみましたら思った通りに表示されるようになりました。自分で作ったというか、本を見ながら打った部分を大幅に変える事もなく、嬉しいです。
本当にありがとうございました!
No.1
- 回答日時:
上記のは知らないのであしからず^^;
海外のjavaを扱ったURLを紹介します。
小窓をコピーして中のリンクを変更すれば良いかと思います。
ステップ等はエキサイトで翻訳しながら読めば解りやすいと思います。
参考URL:http://www.dynamicdrive.com/dynamicindex1/naviga …
ご回答ありがとうございます。
ご紹介頂いたサイト、拝見しました。時間のあるときにでも他のTips少し翻訳しながら使いたいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS アコーディオンメニューが思うように動作しません。 1 2023/08/20 16:48
- JavaScript jQueryで同じクラス名のものを別物として扱いたい 1 2022/06/17 14:14
- Visual Basic(VBA) Selenium.ChromeDriverの使い方について 7 2022/09/22 06:43
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- HTML・CSS HTML & CSS 縦ボックス内の文字の左右センタリング 3 2023/03/25 04:23
- HTML・CSS テキストを画面の真ん中に配置したいです。 2 2022/11/25 16:11
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- HTML・CSS 自身のHPにYouTube動画を貼り付けるのが出来なくなり困ってます 1 2022/11/11 10:44
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CSS line-height が効かない
-
テーブルタグの高さ指定
-
CSSのrollOverで
-
Dreamweaverでソースが横一列に...
-
IE セル間に隙間が・・・
-
Jimdoで表組のなかの画像をポッ...
-
Excelで可視部分だけをWeb形式...
-
プリントアウト時、ページ内容...
-
htmlのセル幅固定の仕方
-
<td> 内のテーブルを上寄せにす...
-
表と画面の余白について
-
ホームページビルダー(表の色...
-
Excelの列や行の幅を表示...
-
C# 2010 pageSetupDialogの余白...
-
パソコンでランドルト環の作成...
-
上部の余白
-
CSSのtransform: translate(-50...
-
エクセルでサイズに合ったもの...
-
javscript超初心者です。
-
スタイルシートの使い方について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
table内で画像と文字をセンター...
-
テーブルで3セル作った行の下に...
-
CSS line-height が効かない
-
<td> 内のテーブルを上寄せにす...
-
HTMLでテーブルを縦に並べたい!
-
Jimdoで表組のなかの画像をポッ...
-
Excelで可視部分だけをWeb形式...
-
プリントアウト時、ページ内容...
-
表の中でのフォーム
-
表の中に表
-
dreamweaverで、テーブルのボー...
-
日本語と外国語(中国語)混在...
-
WebにてExcelを生成してダウン...
-
innerHTMLを使わずに…
-
カレンダーを生成する、極少コ...
-
つねにブラウザ最下部に表示す...
-
HTML:グラフ表示
-
同ページ内で背景の色を変えたい
-
セルを透明に・・・
-
テーブルとテーブルの間に、隙...
おすすめ情報