所以我是javascript和jquery的新手。在第一个功能完成后如何运行第二个功能需要一些帮助? 第一个函数是进度条,第二个函数是我想在进度条动画完成后淡入的表单。
剧本:
$(function() {
var msecsPerUpdate = 1000 / 60; // # of milliseconds between updates, this gives 60fps
var progress = $('progress');
var duration = 1; // secs to animate for
var interval = progress.attr('max') / (duration * 1000 / msecsPerUpdate);
var animator = function() {
progress.val(progress.val() + interval);
if (progress.val() + interval < progress.attr('max')) {
setTimeout(animator, msecsPerUpdate);
} else {
progress.val(progress.attr('max'));
}
}
$('a#forgot').click(animator);
});
$(function(e) {
e.preventDefault();
$('generator#forgot').css('bottom', '5px');
$(this).fadeOut('medium', function() {
$('a#back').fadeIn();
});
});
&#13;
提前致谢!
答案 0 :(得分:0)
我要为您的animator
功能添加一个回调函数,使其如下所示:
var animator = function(callback) {
progress.val(progress.val() + interval);
if (progress.val() + interval < progress.attr('max')) {
setTimeout(animator, msecsPerUpdate);
} else {
progress.val(progress.attr('max'));
callback();
}
}
然后你可以这样称呼它:
$('a#forgot').click(function() {
animator(function() {
console.log('this runs after your animation has completed');
});
});
注意:这是一个没有参数或错误处理的简化代码段,您可能想要添加它。