jQuery的树形插件更改链接的行为(避免崩溃)
-
23-09-2019 - |
题
我使用了jQuery树形插件。看看到“样品1 - 默认”提供的插件演示页面http上:// jquery.bassistance.de/treeview/demo/ 。在我的情况下,所有文件夹和文件的链接。如果我点击例如在扩大“文件夹2”将先崩溃,然后按照链接位置。我想的行为,只有那些倒塌将首先展开,如果它已经扩大了它会留下这样的。
在插件(jquery.treeview.js),其切换行为的代码如下:
66 this.filter(":has(>ul):not(:has(>a))").find(">span").click(function(event) {
67 toggler.apply($(this).next());
68 }).add( $("a", this) ).hoverClass();
我已经想通了,如何让所有的链接,应改为:
$('a').parent().parent().filter('.collapsable')
其结果将是所有里这是目前可折叠(膨胀)的一个阵列: [LI。,li.collapsable]
但我不知道如何从那里继续:-(希望有人能帮助我一起......
我已经成功地改变了linkbehavior选定的电流(类=选择的),此代码链接:
$(".current").click(function(e){
e.preventDefault();
});
提前感谢!
没有正确的解决方案
其他提示
也许并不清楚我真正想做的事情,所以我会尽力提高我的语言表达下一次;-)
在回答我的问题是:
$('li').filter('.collapsable').find('a:first:not(.current)').click(function(e){
e.stopImmediatePropagation();
});
也许它可以帮助别人谁正在寻找类似的东西。
此致!!
<强> UPDATE(张贴的溶液上方不工作,如果用户展开一个节点没有重新加载之后的页面)强>
$('a').click(function(e){
if ($(this).is('.current')) {
e.preventDefault();
} else if ($(this).parent().parent().is('.collapsable')) {
e.stopImmediatePropagation();
};
});
这一个作品,因为它它应该。 : - )
不隶属于 StackOverflow