我无法弄清楚如何为这个CSS动画添加回调函数。
HTML
<button>Rotate</button><br><br>
<div></div>
CSS
div {
height:40px;
width:40px;
background-color: grey;
}
JS
$(document).ready(function(){
$("button").click(function(){
$("div").animate({textIndent: "-=90"},
{step: function(now,fx)
{$(this).css('-webkit-transform','rotate('+now+'deg)')},duration:'slow'},
'linear')
})
})
答案 0 :(得分:1)
$(document).ready(function(){
$("button").click(function(){
$("div").animate({textIndent: "-=90"},
{step: function(now,fx)
{$(this).css('-webkit-transform','rotate('+now+'deg)')},duration:'slow',complete:function(){alert("hi");}},
'linear')
})
})
更新了小提琴:http://jsfiddle.net/H2g74/1/
答案 1 :(得分:0)
您可以使用css动画,并使用相同的持续时间调用回调:
$(document).ready(function(){
var now = -90;
$("button").click(function(){
$("div").css('-webkit-transform', 'rotate('+now+'deg)');
now -= 90;
window.setTimeout(callback, 1000);
});
})
function callback() {
alert('callback func');
}
div {
height:40px;
width:40px;
background-color: grey;
-webkit-transition:all 1s ease;
transition:all 1s ease;
}