我正在测试Jquery Treeview并找到一个我无法弄清楚的错误。
似乎正在发生的事情是,切换在第一级,第二级嵌套中变得混乱。
要测试...转到小提琴,单击全部折叠,然后全部展开,您将看到无法正常展开的节点,但它& #39; s +图标变成了 - 图标,这样至少是正确的。
这是一个已知的错误吗?它也发生在他们的演示上。
我知道有更多最近的插件声称要做同样的事情,但我喜欢这个的简单性(假设我可以解决这个错误!)
我非常确定错误在切换器中,并猜测它没有正确递归:
// handle toggle event
function toggler() {
$(this)
.parent()
// swap classes for hitarea
.find(">.hitarea")
.swapClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea )
.swapClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea )
.end()
// swap classes for parent li
.swapClass( CLASSES.collapsable, CLASSES.expandable )
.swapClass( CLASSES.lastCollapsable, CLASSES.lastExpandable )
// find child lists
.find( ">ul" )
// toggle them
.heightToggle( settings.animated, settings.toggle );
if ( settings.unique ) {
$(this).parent()
.siblings()
// swap classes for hitarea
.find(">.hitarea")
.replaceClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea )
.replaceClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea )
.end()
.replaceClass( CLASSES.collapsable, CLASSES.expandable )
.replaceClass( CLASSES.lastCollapsable, CLASSES.lastExpandable )
.find( ">ul" )
.heightHide( settings.animated, settings.toggle );
}
}
this.data("toggler", toggler);
答案 0 :(得分:2)
只需查看链接http://www.dynamicdrive.com/dynamicindex1/treeview/demo/index.html即可。在这里,他们不使用cookie来保存折叠和扩展数据。这就是为什么它的工作完美。如果我们使用cookie,那么崩溃和扩展就不一致了。
只需改变 $( “树状”)。树状({ 控制:“#treecontrol” }); 与
$( “树视图”)。树状({ 控制:“#treecontrol”, 动画:“快” });
看,它完美运作