データ形式は変更されており、json、配列、または混合データに共通であり、 コードをコピーします コードは次のとおりです: JS レベルレス ツリー メニュー、json 形式、配列形式ユニバーサル <br>.menuTree <br>{ <br>margin-left: -30px; <br>} <br>.menuTree div <br>{ <br>パディング-左: <br>} <br>.menuTree div ul <br>{ <br>表示: なし <br>} <br> .menuTree スパン <br>{ <br>表示: <br>高さ: 25 ピクセル; <br>余白: 1 ピクセル 0;カーソル: ポインタ ; <br>ボーダーボトム: 1px ソリッド <br>} <br>.menuTree span:hover <br>{ <br>背景色: #cf0404; <br> } <br>.menuTree a <br>{ <br>色: #333; <br>テキスト装飾: なし; <br>} <br>.menuTree a:hover <br>{ <br> color: # 06F; <br>.btn <br>{ <br>高さ: 30px; <br>ボーダー下: 1px ソリッド <br>} <br> " id= "btn_open" value="すべて展開" /> div> type=" text/javascript"> var json = { "navnums": { "0": "8051", "4": "4969", "8": "206", "5": " 126", "9": "2174" }、"ホットワード": "食べ物"、"mvonline": [9, 8, [9, 8, 7, 6, 5, 4], 6, 5, 4], "district_online" : "1", "zone_online": "1", "subway_online": "1", "city_online": "1" }; /*レベルレスツリーデータを取得し、DOM構造を生成するための再帰実装* / var str = ""; var forTree = function (o) { var urlstr = ""; var key = new Array(); ) { keys.push(key); } for (var j = 0; j k = key[j]; (typeof o [k] == "オブジェクト") { urlstr = "" k ""; else { urlstr = " " k "=" o[k] ""; str = var kcn = 0 ; if (typeof o[k] == "オブジェクト") { for (var kc in o[k]) { kcn ; if ( kcn > 0) { forTree(o[k]); str = ""; 🎜>} /*ステップレスツリーを追加*/ document.getElementById("menuTree").innerHTML = forTree(json); /*ツリーメニュー*/ var menuTree = function ( ) { //サブオブジェクトを持つ要素に [-] を追加 $("#menuTree ul").each(function (index, element) { var ulContent = $(element).html () ; var scanContent = $(element).siblings("span").html(); if (ulContent) { $(element).siblings("span").html( "[ ] "spanContent) } }); $("#menuTree").find("div span").click(function () { var ul = $(this).siblings("ul"); var spanStr = $(this).html(); var spanStr.substr(3, spanStr.length); if ( ul.find("div").html() != null) { if (ul.css("display") == "none") { ul.show(300); 🎜> $(this).html("[-] " scanContent); } else { ul.hide(300); $(this).html("[ ] " spanContent); } } }) } () /*expand*/ $("#btn_open").click(function () { $( "#menuTree ul").show(300); curzt("-") }) /*shrink*/ $("#btn_close").click( function ( ) { $("#menuTree ul").hide(300); curzt(" "); }) function curzt(v) { $(" #menuTree span").each(function (index, element) { var ul = $(this).siblings("ul"); var spanStr = $(this).html(); varspanContent=spanStr.substr(3,spanStr.length); if(ul.find("div").html() != null) { $(this).html("[" v " ] " スパンコンテンツ); } }