Progress callbacks can no longer resolve Deferred objects to which they are bound.
Progress callbacks can no longer resolve Deferred objects to which they are bound. ??????
by george_black
HTML
<script src="https://code.jquery.com/ui/1.11.3/jquery-ui.min.js"></script>
<link rel="stylesheet" href="https://code.jquery.com/ui/1.11.3/themes/smoothness/jquery-ui.css">
<div id="progressbar" style="margin: 0px 0px 16px 0px;"><span style="position: absolute;text-align: center;margin: 5px 0 0 45%;"></span>
</div>
<center>
<input id="fail" type="button" value=" Fail Now " />
</center>
JavaScript
var countUpTimer;
var countUp_number = -1;
var deferred = $.Deferred();
var promise = deferred.promise();
$(document).ready(function () {
$("#progressbar").progressbar();
$("#progressbar").css({
'background': 'LightYellow'
});
$("#progressbar > div").css({
'background': 'Orange'
});
$("#fail").click(function () {
deferred.reject();
});
function result() {
alert("Done!");
}
function failed() {
$("#progressbar").css({
'background': 'red'
});
}
function inProgress() {
$("#progressbar").progressbar({
value: countUp_number
});
$("#progressbar > span").html(countUp_number + "%");
/* */
if (countUp_number==15){
deferred.resolve("hurray");
}
/* */
}
function countUp() {
if (countUp_number < 100) {
countUp_number += 1;
deferred.notify();
countUpTimer = setTimeout(countUp, 500);
} else {
deferred.resolve();
}
}
promise.done(result);
promise.fail(failed);
promise.progress(inProgress);
countUp();
});