add progress bar example
This commit is contained in:
parent
f88c60ae15
commit
23b583098e
6 changed files with 218 additions and 89 deletions
|
|
@ -1,11 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>OxJS Progressbar Demo</title
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
<script type="text/javascript" src="../../dev/Ox.js"></script>
|
||||
<script type="text/javascript" src="js/progress.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,77 +0,0 @@
|
|||
'use strict';
|
||||
|
||||
Ox.load('UI', {debug: true}, function() {
|
||||
var cancelled = false,
|
||||
paused = false,
|
||||
width = 384,
|
||||
$progressbar = Ox.Progressbar({
|
||||
showCancelButton: true,
|
||||
showPauseButton: true,
|
||||
showPercent: true,
|
||||
showRestartButton: true,
|
||||
showTime: true,
|
||||
width: width
|
||||
})
|
||||
.css({margin: '16px'})
|
||||
.appendTo(Ox.UI.$body)
|
||||
.bindEvent({
|
||||
cancel: function() {
|
||||
cancelled = true;
|
||||
setPercent();
|
||||
},
|
||||
complete: function() {
|
||||
clearInterval(interval);
|
||||
},
|
||||
pause: function() {
|
||||
paused = true;
|
||||
setPercent();
|
||||
},
|
||||
restart: function() {
|
||||
cancelled = false;
|
||||
paused = false;
|
||||
progress = 0;
|
||||
},
|
||||
resume: function() {
|
||||
paused = false;
|
||||
}
|
||||
}),
|
||||
$status = Ox.Label({
|
||||
width: width
|
||||
})
|
||||
.css({marginLeft: '16px'})
|
||||
.appendTo(Ox.UI.$body),
|
||||
$percent = $('<div>')
|
||||
.css({float: 'left', width: '64px', fontWeight: 'bold'})
|
||||
.appendTo($status),
|
||||
$remaining = $('<div>')
|
||||
.css({float: 'left', width: width - 64 - 16 + 'px', textAlign: 'right'})
|
||||
.appendTo($status),
|
||||
progress = 0,
|
||||
i = 0,
|
||||
interval = setInterval(function() {
|
||||
if (!cancelled && !paused) {
|
||||
if (Math.random() < 0.25) {
|
||||
progress += 0.01;
|
||||
$progressbar.options({progress: progress});
|
||||
}
|
||||
if (i % 10 == 0 || progress >= 1) {
|
||||
var status = $progressbar.status();
|
||||
setPercent();
|
||||
$remaining.html('Remaining: ' + (
|
||||
status.remaining == 0 ? 'done'
|
||||
: status.remaining == Infinity ? 'unknown'
|
||||
: Ox.formatDuration(status.remaining, 'long')
|
||||
));
|
||||
}
|
||||
if (progress >= 1) {
|
||||
clearInterval(interval);
|
||||
}
|
||||
i++;
|
||||
}
|
||||
}, 25);
|
||||
function setPercent() {
|
||||
$percent.html(
|
||||
Math.round($progressbar.options('progress') * 100) + '%'
|
||||
);
|
||||
}
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue