JavaScriptを利用しツリーメニューを作成していますが、
ページを飛んで戻ってくるとメニューが閉じてしまいます。
更新を押した場合も同じです。
それを開いた状態に保っておきたいのです。
ちなみにソースは、
<HEAD>
<SCRIPT language="JavaScript">
<!--
// ツリーメニュー
flag = false;
function treeMenu(tName) {
tMenu = document.all[tName].style;
if(tMenu.display == 'none') tMenu.display = "block";
else tMenu.display = "none";
}
//-->
</SCRIPT>
<HEAD>
と最初に書いておいて、
ツリーメニューを表示させたいところに、
<A href="javaScript:treeMenu('treeMenu1')">○○○</a><br>
<DIV id="treeMenu1" style="display:none">
┣<A href="aaa.html">aaa</A><BR>
┣<A href="bbb.html">bbb</A><BR>
┗<A href="ccc.html">ccc</A><BR>
</DIV>
と書いてます。
どこをどのように変えればよいですか?
よろしくお願いします。
また参考にさせて頂いたサイトも一緒に載せておきます。
http://javascript.eweb-design.com/0703_tm.html
No.3ベストアンサー
- 回答日時:
No.2です。
一応、Firefox 3.6 と IE 8.0 と GoogleChrome 5.0
で確認してあります。(operaでもSafariでも最新のならOKのはず)
HTML5ですから、古いブラウザーはだめでしょう。
昔ながらの方法はCookie利用です。その例は、
あちこち(このカテゴリーにも)にたくさんあるので
書いても無駄かなと思ったのですが、ありがとうポイントくれるなら
書きます。
この回答への補足
何度もありがとうございます。
では恐らく「古いブラウザー」だったのだと思います。
お手数おかけして申し訳ありませんでした。
>あちこち(このカテゴリーにも)にたくさんあるので
とのことでしたので、「ツリー cookie」で調べてみましたところ、
私の希望しているプログラムが書かれているサイトを見つけることができました。
やってみると思っていた通りの動きをしてくれましたのでほっとしました。
助言して頂きありがとうございました。
No.2
- 回答日時:
Cookieじゃないけど、似たようなのを使って
HTML5 Web Strage を使ってみた:最新のブラウザーで試してね)
※全角空白は半角空白にしてね
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>HTML 5 WebStrage Test</title>
<style type="text/css"></style>
<script type="text/javascript">
function treeMenu(tName) {
var tMenu = document.querySelector('#'+tName);
if(localStorage.flag=='off'){
localStorage.flag='on';
tMenu.style.display='block';
}else{
localStorage.flag='off';
tMenu.style.display='none';
}
}
function chk(tName){
var tMenu = document.querySelector('#'+tName);
tMenu.style.display=(localStorage.flag=='off')?'none':'block';
}
</script>
</head>
<body onload=chk('treeMenu1');>
<p><h3>HTML 5 WebStrage Test</h3></p>
<A href="javaScript:treeMenu('treeMenu1')">○○○</a><br>
<div id="treeMenu1" style="display:none">
┣<a href="aaa.html">aaa</a><br>
┣<a href="bbb.html">bbb</a><br>
┗<a href="ccc.html">ccc</a><br>
</div>
</body>
</html>
この回答への補足
回答ありがとうございます。
回答者様の言う通り、全角空白を半角空白に変えて、そのままタグを書いてみたんですが、
全く何も起こらず…。
JavaScriptは授業で少しかじった程度なので、
このプログラムを見ただけでは全然何が書いてあるか分かりませんし、
とても失礼なのは承知しているのですが、
回答者様はこのプログラムをHTMLで実行されましたでしょうか?
もしそれでちゃんと実行されるのであれば、
私の書き方が悪いのか、
もしくは私が持っているパソコンの環境では実行されないものなんだと思いますが…。
すみませんが、
上記のプログラムを見直して頂くか、
何か別のプログラムを教えて頂けませんでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS アコーディオンメニューが思うように動作しません。 1 2023/08/20 16:48
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- HTML・CSS HTML & CSS 縦ボックス内の文字の左右センタリング 3 2023/03/25 04:23
- JavaScript スマフォではボタンを表示させたくない 2 2023/01/20 14:26
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- HTML・CSS 下にスクロールしても、追従するボタンのコードを書いたのですが、ボタンの中の画像が半分しか表示されない 1 2022/04/16 21:31
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript GoogleChart 階層ごとのブロックの長さを個別に設定したい 1 2022/07/06 14:27
- JavaScript 画像の表示位置 3 2022/12/23 08:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
MAX関数を使ってからLEFT JOIN...
-
createElementで作成した要素を...
-
背景色を透明化
-
読み込んだQRコードをフォーム...
-
Jquery 親要素で順番入れ替え
-
console.log結果をhtmlで表示し...
-
iframe内のリンクが飛ばないの...
-
innerHTMLに入れたリンクが反応...
-
javascriptテキストBOX色を元に...
-
createElementが一瞬で消えてし...
-
変数名をどのようにつけるのが...
-
jQueryでクリックされた要素のi...
-
jqueryを使って無駄なspanタグ...
-
removeEventListenerについて
-
自働生成される<div>タグに連番...
-
変数内容をHTML内で表示する方法
-
Notice:Undefined index が。
-
配列で特定キーが同じ値だった...
-
リンク色を動的に変更したい。i...
-
jQueryで特定id以外の下にある...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
MAX関数を使ってからLEFT JOIN...
-
HTMLタグに複数のクラスを設定...
-
変数名をどのようにつけるのが...
-
401エラードキュメントを401.ht...
-
javascriptテキストBOX色を元に...
-
読み込んだQRコードをフォーム...
-
タブで開いてさらにタブ内をア...
-
createElementで作成した要素を...
-
removeEventListenerについて
-
表示・非表示のスクリプトで、...
-
HTMLとJavaScriptで作ったタイ...
-
HTMLとJavaScriptで作ったタイ...
-
getElementByIdの戻り値がnull...
-
指定したパスが現URLに含まれて...
-
[急ぎ] videoタグで埋め込んだm...
-
IFRAMEの表示/非表示を切り替え...
-
iframe内のリンクが飛ばないの...
-
removeAttribute()メソッドで削...
-
背景色を透明化
-
jQueryで同じid属性が複数あっ...
おすすめ情報