为每个级别设置JS项目的样式

时间:2017-01-13 10:46:00

标签: javascript html css jqtree

我正在使用Jqtree开发一个拖放树,但我想按节点级别设置树的样式。

Tree Javascript

  var data = [
  {
      name: 'node1', id: 1,
      children: [
          { name: 'child1', id: 2 },
          { name: 'child1', id: 2, children: [
              { name: 'child7', id: 7 },
              { name: 'child7', id: 8 } ] },
          { name: 'child2', id: 3 }
      ]
  },
  {
      name: 'node2', id: 4,
      children: [
          { name: 'child3', id: 5 },
          { name: 'child4', id: 6 }
      ]
  }
];
$('#tree1').tree({
  data: data,
  autoOpen: true,
  dragAndDrop: true
});

显示树的代码

$(function() {
    $('#tree1').tree({
        data: data,
        autoOpen: true,
        dragAndDrop: true

    });

然而,我看到了jqtree documentantion,我如何设置样式或仅将代码添加到此var提供的结果中?

var node = $('#tree1').tree('getNodeById', 123);
var treelevel = node.getLevel();

1 个答案:

答案 0 :(得分:0)

您可以相应地为它们分配ID和样式:

$('#tree1').tree({
    data: data,
    onCreateLi: function(node, $li) {
        $li.attr('id', 'item' + node.id);
    }
});

#item5 span{background: red;}

http://jsfiddle.net/2uwb7qwj/