我想逐渐为进度条制作动画。当我使用for
循环时,进度条消失
<script type="text/javascript">
$(function() {
// Set the progressbar's initial value to 76%.
$("#progressbar1").progressbar({value:7});
// Set the progressbar's value to 18%.
$("#button1").click(function() {
$("#progressbar1").progressbar("option", "value", 18);
});
// Increment the progressbar's current value by 10%.
$("#button2").click(function() {
var val = $("#progressbar1").progressbar("option", "value");
});
// Decrement the progressbar's current value by 10%.
$("#button3").click(function() {
var val = $("#progressbar1").progressbar("option", "value");
$("#progressbar1").progressbar("option", "value", val-10);
});
});
</script>
<input id="button2" type="button" value="Progress" />
因此,当我点击按钮2时,进度条必须逐渐动画。
如果有人帮助我在页面打开时使用onload()
函数加载动画,我将更加感谢
请帮我逐步设置进度条的动画,并在打开文件时自动加载。
此致
Chandru。
答案 0 :(得分:3)
$('#progressbar').progressbar();
$('#button2').click(function(){
makeProgress($('#progressbar'), 0, 100, 4);
});
function makeProgress(target, start, stop, steps){
var step = (stop - start)/steps;
var increment = function(){
var val = target.progressbar("value");
target.progressbar("option", "value", val + step);
if (val + step < stop) setTimeout(increment, 500);
};
increment();
}
答案 1 :(得分:1)
到目前为止还不是最好的方式(实际上更像是一个hack),但也许你可以查看.animate
jQuery函数。使用“虚拟”css属性,它可能看起来像是为了将进度条设置为从0到100的值:
$('#progressbar').animate(
{ dummy: '100' },
{
step: function(now,fx) {
// set current value
$('#progressbar').progressbar('value', now);
}
});
编辑:使用jQuery缓动函数之一的示例:http://jsfiddle.net/hPGNE/