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=$('
'+gen3_name+''); subUL2.追加(gen3_li); }); } }); } }); $('body').append(rootUL); }, }); });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",
您可以使用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>