<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title></title>
<style>
#a{
position:absolute;
top:136px;
left:200px;
height:100px;
width:100px;
background:#FF0066;
}
</style>
<script src="scripts/jquery.js"></script>
<script>
var t;
$(function(){
$("#a").click(function(){
$("#a").animate(
{
top:0,
left:0,
t:100
},{
step: function (now){
$(this).css('height',now+'%');
$(this).css('width',now+'%');
},duration:'slow'
},'linear',function(){
alert('hi');
});
})
})
</script>
</head>
<body>
<div id="a"></div>
</body>
</html
在animate函数完成后我想要一个函数。但是因为我正在使用step,所以当动画完成时函数没有被调用。是否可以在使用带有step的animate时调用函数?或者在动画完成后我可以通过其他方式调用该函数吗?
答案 0 :(得分:3)
您需要传递一个功能才能完成。
$(function(){
$("#a").click(function(){
$("#a").animate({
top:0,
left:0,
t:100
},
{
step: function (now){
$(this).css('height',now+'%');
$(this).css('width',now+'%');
},
complete: function(){
alert('end ani');
}
}
);
});
});