2011-11-21 155 views

回答

0

看起來你需要使用CSS

li.jstree-open[rel=TYPE]{ background:url("openimage.gif") 0px 0px no-repeat !important; } 
li.jstree-closed[rel=TYPE]{ background:url("closedimage.gif") 0px 0px no-repeat !important; } 
li.jstree-leaf[rel=TYPE]{ background:url("leafimage.gif") 0px 0px no-repeat !important; } 

更多信息在jsTree forum

4

@Seventh元素:

你在這個問題本身的代碼是answer.It作品挺好的。 對於開放節點使用

li.jstree-open > a .jstree-icon { background:url("/images/favorites.png") 0px 0px no-repeat !important; } 

對於閉節點使用

li.jstree-closed > a .jstree-icon { background:url("/images/favorites.png") 0px 0px no-repeat !important; } 

乾杯

+3

我知道上述工程的CSS,這就是爲什麼我張貼。不過,我的問題是:「可以使用類型插件」... –

2

如果你們想用jQuery和引導圖標,這裏是我的解決方案。

[注:我用glyphicon文件夾打開引導圖標文件夾打開和 的文件夾密切glyphicon文件夾關閉引導圖標]

// bind customize icon change function in jsTree open_node event. 
$('#your-jstree').on('open_node.jstree', function(e, data){ 
    $('#' + data.node.id).find('i.jstree-icon.jstree-themeicon').first() 
     .removeClass('glyphicon-folder-close').addClass('glyphicon-folder-open'); 
}); 

// bind customize icon change function in jsTree close_node event. 
$('#your-jstree').on('close_node.jstree', function(e, data){ 
    $('#' + data.node.id).find('i.jstree-icon.jstree-themeicon').first() 
     .removeClass('glyphicon-folder-open').addClass('glyphicon-folder-close'); 
}); 

,或者如果你正在使用的字體-awesome:

// bind customize icon change function in jsTree open_node event. 
$('#jstree').on('open_node.jstree', function(e, data){ 
    var icon = $('#' + data.node.id).find('i.jstree-icon.jstree-themeicon').first(); 
    icon.removeClass('fa-folder').addClass('fa-folder-open'); 
}); 

// bind customize icon change function in jsTree close_node event. 
$('#jstree').on('close_node.jstree', function(e, data){ 
    var icon = $('#' + data.node.id).find('i.jstree-icon.jstree-themeicon').first(); 
    icon.removeClass('fa-folder-open').addClass('fa-folder'); 
}); 
0

在今天,有一個名爲「set_icon」(見API)功能,允許您設置desider圖標,從路徑〜應變g或班級名稱。

$.jstree.reference('#jstree').set_icon(node, "/assets/contextMenu_icons/folderOpened.png") 
2

一種可能的解決方案是具有兩個type秒 - 一個用於打開的文件夾,和一個用於關閉的文件夾。更改節點type很容易。

another answer of mine

<div id="jstree_menu"></div> 
<script> 
/* Load menu tree data */ 
$('#jstree_menu').jstree(
    { 
     'core' : { 
      'data' : { 
       'url' : '/jstree-menu-data/index.html', 
      } 
     }, 
     'plugins' : [ "types" ], 
     'types' : { 
      'default' : { 
       'icon' : 'fa fa-angle-right fa-fw' 
      }, 
      'f-open' : { 
       'icon' : 'fa fa-folder-open fa-fw' 
      }, 
      'f-closed' : { 
       'icon' : 'fa fa-folder fa-fw' 
      } 
     } 
    } 
); 

/* Toggle between folder open and folder closed */ 
$("#jstree_menu").on('open_node.jstree', function (event, data) { 
    data.instance.set_type(data.node,'f-open'); 
}); 
$("#jstree_menu").on('close_node.jstree', function (event, data) { 
    data.instance.set_type(data.node,'f-closed'); 
}); 
</script> 
相關問題