我正在尝试实现展开/折叠所有功能。我有一个可展开项目的列表,右上角有一个按钮,允许用户展开和折叠所有内容。
目前,如果所有内容都一起展开/折叠,我的代码就可以工作,但是当用户展开一些(而不是全部)元素时,我的代码就不能正常工作。它只是切换折叠/展开的元素。JSFiddle
这是我正在运行的 jQuery 代码:
$('div.srcprojects').hide();
$('.projectscontainer').on("click", "span.destproject", function (){
$(this).siblings('.srcprojects').toggle().end().siblings('div.destarrow').toggleClass("arrow-right arrow-down");
}).on("click", "div.destarrow", function (){
$(this).parent().find("span.destproject").trigger("click");
});
$('body').on("click", "span#expandcollapse", function (){
$(this).text(function(i, currentText){
return currentText === 'Expand All' ? 'Collapse All' : 'Expand All';
});
$('body').find("span.destproject").trigger("click");
});
我怎样才能做到这一点,以便我的#expandcollapse 实际上展开所有/折叠所有?