我要求输出。
第1项
项目1.1
项目1.1.1
项目1.2
第2项
第3项
如果我点击第2项,那么输出将是
第1项
第2项
项目2.1
项目2.1.1
项目2.2
第3项
这是我的javascript。
$(".slide-list li a").click(function() {
if ($(this).hasClass("selected") && $(this).next().queue().length === 0) {
$(this).next().slideUp();
$(this).removeClass("selected");
}
else if (!$(this).hasClass("selected") && $(this).next().queue().length === 0) {
$(this).next().slideDown();
$(this).addClass("selected");
//$(this).next().find("ul:first").show();
$(this).next().find("ul:first").slideToggle('slow'); //not working perfectly.
}
var $licurrent = $(this).parent();
window.location.hash = $('.slide-list li').index($licurrent);
$licurrent.parent().find("li").not($licurrent).find("a").removeClass("selected"); $licurrent.parent().find("li").not($licurrent).find("ul").hide("k");
});
$(document).ready(function(){
$("#Accord-wrapper ul.slide-list li a").first().trigger("click");
});
答案 0 :(得分:0)
<强>更新强>:
如果您只想显示级别2和级别3而不是级别2,那么这是工作Fiddle ..
将您的JS改为:
$(".slide-list li a").click(function() {
if($(this).hasClass("selected")){
$(this).removeClass("selected");
temp_selector = $(this).next("ul");
while(temp_selector.length > 0 ){
temp_selector.slideUp();
temp_selector = temp_selector.find("ul");
}
}else{
$(this).parent().siblings("li").each(function(){
$(this).find(".selected").next("ul").slideUp();
$(this).find(".selected").removeClass("selected");
});
temp_selector = $(this).next("ul");
while(temp_selector.length > 0 ){
temp_selector.prev("a").addClass("selected");
temp_selector.slideDown();
temp_selector = temp_selector.children("li").first().children("a").next("ul");
}
}
});