<!DOCTYPE HTML>
|
|
<html>
|
|
<head>
|
|
<title>Timeline | Dynamic Content</title>
|
|
|
|
<script src="../../../dist/vis.js"></script>
|
|
<link href="../../../dist/vis.min.css" rel="stylesheet" type="text/css" />
|
|
|
|
<style type="text/css">
|
|
.progress-wrapper {
|
|
background: white;
|
|
width: 100%;
|
|
height: 18px;
|
|
text-align: center;
|
|
position: relative;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.progress {
|
|
height: 100%;
|
|
width: 60%;
|
|
position: absolute;
|
|
left: 0px;
|
|
top: 0px;
|
|
background: #63ed63;
|
|
}
|
|
|
|
.progress-label {
|
|
position: absolute;
|
|
z-index: 1;
|
|
}
|
|
|
|
</style>
|
|
</head>
|
|
<body>
|
|
|
|
<div id="myTimeline"></div>
|
|
|
|
<script type="text/javascript">
|
|
// DOM element where the Timeline will be attached
|
|
var container = document.getElementById('myTimeline');
|
|
|
|
// Create a DataSet (allows two way data-binding)
|
|
var items = new vis.DataSet([
|
|
{id: 1, value: 0.2, content: 'item 1', start: '2014-04-20', end: '2014-04-26'},
|
|
{id: 2, value: 0.6, content: 'item 2', start: '2014-05-14', end: '2014-05-18'},
|
|
{id: 3, type: 'point', content: 'item 3', start: '2014-04-15', end: '2014-05-18'},
|
|
{id: 4, content: 'item 4 with visibleFramTemplate in item', start: '2014-04-16', end: '2014-04-26', visibleFramTemplate: '<div class="progress-wrapper"><div class="progress"></div><label class="progress-label">80%<label></div>'
|
|
}
|
|
]);
|
|
|
|
// Configuration for the Timeline
|
|
var options = {
|
|
visibleFrameTemplate: function(item) {
|
|
if (item.visibleFramTemplate) {
|
|
return item.visibleFramTemplate;
|
|
}
|
|
var percentage = item.value * 100 + '%';
|
|
return '<div class="progress-wrapper"><div class="progress"></div><label class="progress-label">' + percentage + '<label></div>';
|
|
}
|
|
};
|
|
|
|
// Create a Timeline
|
|
var timeline = new vis.Timeline(container, items, options);
|
|
</script>
|
|
</body>
|
|
</html>
|