Tree View
Tree view are powered by Jstree Plugin, that provides interactive trees with drag & drop option, inline edition, custom design and many options.
How to Create a Tree View?
1. Add specific css and javascript
Add inside head this css file:
<link href="assets/plugins/jstree/src/themes/default/style.min.css" rel="stylesheet">
Add inside body at the end of your page, before main template scripts:
<script src="assets/plugins/jstree/jstree.min.js"></script>
2. Create your list
Method 1
You can create your list inside html, like a basic list like this:
<div id="my-tree">
<ul >
<li>
<a href="#">My videos</a>
<ul>
<li><a href="#">Video 1</a></li>
<li><a href="#">Video 2</a></li>
</ul>
</li>
<li>
<a href="#">My pictures</a>
<ul>
<li><a href="#">Picture 1</a></li>
<li><a href="#">Picture 2</a></li>
</ul>
</li>
<li><a href="#">My files</a></li>
<li><a href="#">My documents</a>
</ul>
</div>
After, you have to initiate plugin like this:
$('#tree2').jstree();
Method 2
Another method is to create all your tree directly in javascript. In your html page, you just have:
<div id="my-tree"></div>
And in your script page, you will have your list, with text, icons option for each element and state (open, selected). Here is an example
$('#my-tree').jstree({
'core': {
'data': [{
'text': 'My pictures',
"icon": "fa fa-picture-o c-red",
'state': {
'selected': false
}
}, {
'text': 'My videos',
"icon": "fa fa-film c-red",
'state': {
'opened': true,
'selected': false
},
'children': [{
'text': 'Video 1',
"icon": "fa fa-film c-red"
}, {
'text': 'Video 2',
"icon": "fa fa-film c-red"
}]
}
]
}
});
Checkbox Option
If you want to add checkbox before each element, you add "plugins": ["checkbox"] in your script:
$('#my-tree').jstree({
'core': {
// Your core content, idem as last example
},
"plugins": ["checkbox"]
});
Drap & Drop Option
If you want to add drag and drop option, you will have to add "plugins": ["dnd"] in your script:
$('#my-tree').jstree({
'core': {
// Your core content, idem as last example
},
"plugins": ["dnd"]
});