jQuery多兄弟显示一次只隐藏一个 $(文档).ready(函数() { $.ajax({ 键入:“获取”, url:“data/familytree.xml”, 数据类型:“xml”, 成功:函数(xml) { var rootUL=$(“”); $(xml).find('parent').each(函数(索引) { var prntName=$(this).children('name').text(); var prntGender=$(this).children('gender').text(); var prnt_li=$(''+prntName+'); prnt_li.find('.btn_1')。在('click',function()上 { if($(this).parent().find('ul').html()!=未定义) { $(this.parent().find('.root').slideToggle('slow'); } }); rootUL.append(prnt_li); var subling=$(this).children('subgent').children('sibling').length; 如果(子分页>0) { var subUL=$(“”) 附件(subUL); $(this).childrent('subgent').children('sibling').each(函数(索引) { var gen2_name=$(this).children('name').text(); var gen2_li=$(''+gen2_name+'); gen2_li.find('.btn_2')。on('click',function() { if($(this).parent().find('ul').html()!=未定义) { $(this.parent().find('ul').slideToggle(); } }); 附加(gen2_li); var subling2=$(this).children('subgent').children('sibling').length; 如果(子字符串2>0) { var subUL2=$(“”) gen2_li.append(subUL2); $(this).childrent('degent').children('sibling').each(function() { var gen3_name=$(this).children('name').text(); var gen3_li=$('

jQuery多兄弟显示一次只隐藏一个 $(文档).ready(函数() { $.ajax({ 键入:“获取”, url:“data/familytree.xml”, 数据类型:“xml”, 成功:函数(xml) { var rootUL=$(“”); $(xml).find('parent').each(函数(索引) { var prntName=$(this).children('name').text(); var prntGender=$(this).children('gender').text(); var prnt_li=$(''+prntName+'); prnt_li.find('.btn_1')。在('click',function()上 { if($(this).parent().find('ul').html()!=未定义) { $(this.parent().find('.root').slideToggle('slow'); } }); rootUL.append(prnt_li); var subling=$(this).children('subgent').children('sibling').length; 如果(子分页>0) { var subUL=$(“”) 附件(subUL); $(this).childrent('subgent').children('sibling').each(函数(索引) { var gen2_name=$(this).children('name').text(); var gen2_li=$(''+gen2_name+'); gen2_li.find('.btn_2')。on('click',function() { if($(this).parent().find('ul').html()!=未定义) { $(this.parent().find('ul').slideToggle(); } }); 附加(gen2_li); var subling2=$(this).children('subgent').children('sibling').length; 如果(子字符串2>0) { var subUL2=$(“”) gen2_li.append(subUL2); $(this).childrent('degent').children('sibling').each(function() { var gen3_name=$(this).children('name').text(); var gen3_li=$(',jquery,Jquery,'+gen3_name+''); subUL2.追加(gen3_li); }); } }); } }); $('body').append(rootUL); }, }); }); 您可以使用ddaccordion.js jquery插件获取它。像这样的东西 $(document).ready(function() { $.ajax({ type:"get", url:"data/familytree.xml", dataType:"xml",

'+gen3_name+'

'); subUL2.追加(gen3_li); }); } }); } }); $('body').append(rootUL); }, }); });
您可以使用ddaccordion.js jquery插件获取它。像这样的东西

$(document).ready(function()
{

  $.ajax({
        type:"get",
        url:"data/familytree.xml",
        dataType:"xml",
        success:function(xml)
        {
            var rootUL = $('<ul></ul>');
            $(xml).find('parent').each(function(index)                      
            {
                var prntName    = $(this).children('name').text();
                var prntGender  = $(this).children('gender').text();
                var prnt_li     = $('<li class="firstgenLi"><p class="btn_1">'+ prntName +'</p></li>');

            prnt_li.find('.btn_1').on('click',function()
            {
                if($(this).parent().find('ul').html()!=undefined)
                {
                    $(this).parent().find('.root').slideToggle('slow');
                }
            });


            rootUL.append(prnt_li);

            var subling = $(this).children('descendent').children('sibling').length;

            if(subling>0)
            {
                var subUL = $('<ul class="root"></ul>')
                prnt_li.append(subUL);

                $(this).children('descendent').children('sibling').each(function(index)
                {
                    var gen2_name   = $(this).children('name').text();
                    var gen2_li     = $('<li class="secondGenLi"><p class="btn_2">'+ gen2_name +'</p></li>');

                    gen2_li.find('.btn_2').on('click',function()
                    {
                        if($(this).parent().find('ul').html()!=undefined)
                        {
                            $(this).parent().find('ul').slideToggle();
                        }
                    });

                    subUL.append(gen2_li);

                    var subling2 = $(this).children('descendent').children('sibling').length;

                    if(subling2>0)
                    {
                        var subUL2 = $('<ul></ul>')
                        gen2_li.append(subUL2);

                        $(this).children('descendent').children('sibling').each(function()
                        {
                            var gen3_name   = $(this).children('name').text();
                            var gen3_li     = $('<li class="thirdGenLi"><p>'+ gen3_name +'</p></li>');
                            subUL2.append(gen3_li);
                        });
                    }

                });
            }
        });
        $('body').append(rootUL);
    },
 });


});

ddaccordion.init({
headerclass:“submenuheader”,//headers组的共享CSS类名
contentclass:“子菜单”//内容组的共享CSS类名
revealtype:“click”//当用户在标题上单击或点击鼠标时显示内容?有效值:“click”、“clickgo”或
“鼠标盖”
mouseoverdelay:200,//如果revealtype=“mouseover”,则在标头在mouseover上展开之前以毫秒为单位设置延迟
collapseprev:true,//折叠以前的内容(因此在任何时候只打开一个)?true/false
defaultexpanded:[],//默认打开的内容索引[index1、index2等][]表示没有内容
onemustopen:false,//指定是否至少有一个标头应始终打开(因此从不关闭所有标头)
animatedefault:false,//默认情况下打开的内容是否应动画显示到视图中?
persiststate:true,//浏览器会话中打开内容的持久状态?
toggleclass:[“”,”“],//两个CSS类,分别在头折叠和展开时应用于头[“class1”,
“类别2”]
切换HTML:[“后缀”、“”、“”],
//收拢并删除标题时添加到标题的其他HTML
分别扩展[“位置”、“html1”、“html2”](见文档)
animatespeed:“快”//动画速度:以毫秒为单位的整数(即:200),或关键字“快”、“正常”或“慢”
oninit:function(headers,expandedindices){//在头初始化时运行的自定义代码
//无所事事
},
onopenclose:函数(头、索引、状态、isuseractivated){//在打开头时运行的自定义代码
还是关闭
//无所事事
}
})
满足于
面板1的面板2的内容面板3的内容

你的问题是什么。我的天,我问你这个代码?你必须读书
<head> <script src="yourPath/ddaccordion.js"> </script>

   <script type="text/javascript">

   ddaccordion.init({
               headerclass: "submenuheader", //Shared CSS class name of headers group
               contentclass: "submenu", //Shared CSS class name of contents group
               revealtype: "click", //Reveal content when user clicks or onmouseover the header? Valid value: "click", "clickgo", or
   "mouseover"
               mouseoverdelay: 200, //if revealtype="mouseover", set delay in milliseconds before header expands onMouseover
               collapseprev: true, //Collapse previous content (so only one open at any time)? true/false 
               defaultexpanded: [], //index of content(s) open by default [index1, index2, etc] [] denotes no content
               onemustopen: false, //Specify whether at least one header should be open always (so never all headers closed)
               animatedefault: false, //Should contents open by default be animated into view?
               persiststate: true, //persist state of opened contents within browser session?
               toggleclass: ["", ""], //Two CSS classes to be applied to the header when it's collapsed and expanded, respectively ["class1",
   "class2"]
               togglehtml: ["suffix", "<img src='content/images/arrow_up.png' class='statusicon' />", "<img
   src='content/images/arrow_down.png' class='statusicon' />"],
   //Additional HTML added to the header when it's collapsed and
   expanded, respectively  ["position", "html1", "html2"] (see docs)
               animatespeed: "fast", //speed of animation: integer in milliseconds (ie: 200), or keywords "fast", "normal", or "slow"
               oninit: function (headers, expandedindices) { //custom code to run when headers have initalized
                   //do nothing
               },
               onopenclose: function (header, index, state, isuseractivated) { //custom code to run whenever a header is opened
   or closed
                   //do nothing
               }
           })

   </script> </head> <body> <a class="submenuheader"
   href="javascript:;">Panel 1</a> <div class="submenu">Content for
   panel 1</div> <a class="submenuheader" href="javascript:;">Panel
   2</a> <div class="submenu">Content for panel 2</div> <a
   class="submenuheader" href="javascript:;">Panel 3</a> <div
   class="submenu">Content for panel 3</div> </body>