我有一个网页,通过从顶部滑动带来另一个页面...我已经使用jquery animate实现了这个...现在我的查询是如何知道animate()方法的进度百分比...就像从页面开始滑动到完成
由于
答案 0 :(得分:6)
您可以使用在动画选项中传递的step
-callback来执行每一步的功能。你可以调查一下。
$('#myElement').animate({/*Your animation options.*/}, {
step: function(current_number){
/* measure stuff using the first argument passed to this function */
}
})
答案 1 :(得分:0)
好吧,你定义动画的时间。您可以使用相应的时间跨度执行setInterval
。 Like this
$(function() {
$("#hello").animate({"height":600}, 10000);
var percent = 0;
var pointer = setInterval(function() {
if (percent > 100) {
clearInterval(pointer);
return;
}
$("#Status").text(percent + "%");
percent++;
}, 100);
});
修改
我已经添加了一些代码来清除间隔。 And updated the demo
修改
我再次更新了Demo。这里animate
的回调负责停止间隔。然而,它并不精确。
答案 2 :(得分:0)
您可以使用内置于animate()中的step callback function并计算出该百分比的进度。
答案 3 :(得分:0)
我希望这会起作用
<style>
#frame{
width:400px;
height:50px;
border:1px solid #000;
}
</style>
<div id="progress"></div>
<div id="frame"></div>
<script>
$(document).ready(function(){
$("#frame").animate({height:'500'},
{
step: function(now, fx) {
$("#progress").text(now);
},
complete: function(){
}
});
});
</script>