你可以告诉我如何在焦点在顶级节点时将焦点移动到同一级别。实际上我使用jstree并将它与jquery一起使用。 首先我在扩展后从树视图中选择任何节点。然后我按下按钮,它转到父节点。如果它是顶级节点,它的父节点是#34;#"。如果用户不在有父母,它开始将焦点放在同一水平。?
用例子解释; 我扩展" c" node.Select" c-a"然后按下按钮,进入" c"节点(正如预期的那样,它转到它的父节点)。但是现在当用户再次按下它时停止移动它应该移动到" b"那么" a" ..
http://jsfiddle.net/fuu94/176/
$('#onelvel').click(function () {
if($('.jstree-clicked').length){
if($('.jstree-clicked').next('.jstree-children').length){
$('.jstree-clicked').click();
} else {
$('.jstree-clicked').closest('.jstree-children').prev('.jstree-anchor').click().addClass('jstree-clicked');
}
}
var selectedItem= $('.jstree-clicked').parent().attr('id');
alert(selectedItem)
var parentS= $('#tree').jstree(true).get_parent(selectedItem.toString());
alert(parentS)
if(parentS=="#"){
alert("on b want to go a")
}else{
alert("going uper node")
}
});
我正在检查来自http://www.jstree.com/api/
的api答案 0 :(得分:0)
您对选择器感到困惑,以及jsTree如何对点击的各种元素做出反应。
看一下这个演示http://jsfiddle.net/XN5JT/1/
使用Javascript:
$('#onelvel').click(function () {
selected = $('#tree').jstree(true).get_selected();
parent = $('#tree').jstree(true).get_parent(selected);
console.log(selected, parent);
if (parent == '#') {
$('#' + selected).prev('li').children('.jstree-anchor').click();
} else {
$('#' + parent).children('.jstree-anchor').click();
}
});