我想这适用于摆动或弹跳。关于如何在另一篇文章中使对象摆动的示例,此代码已发布:http: //jsfiddle.net/gVCWE/149/
你如何让摆动减速停止?
.box{
width:50px; height:50px;
background: yellow;
border: 1px solid black;
margin:100px;
position: relative;
float: left;
-moz-animation: 3s ease 0s normal none infinite swing;
-moz-transform-origin: center top;
-webkit-animation:swing 3s infinite ease-in-out;
-webkit-transform-origin:top;
}
@-moz-keyframes swing{
0%{-moz-transform:rotate(-3deg)}
50%{-moz-transform:rotate(3deg)}
100%{-moz-transform:rotate(-3deg)}
}
@-webkit-keyframes swing{
0%{-webkit-transform:rotate(-3deg)}
50%{-webkit-transform:rotate(3deg)}
100%{-webkit-transform:rotate(-3deg)}
}
我也想做其他的“惯性效应”。如果有必要,我不介意使用 JavaScript 或 JQuery。我觉得单独的 CSS 或关键帧不足以完成我想做的事情。
我可以使用 setInterval 并执行以下操作:
function prepareAnimation()
{
setInterval(slowAnimation, 200)
}
function slowAnimation()
{
speed=$(".box").getSpeed(); // how would I write getSpeed?
if(speed<=0) return;
speed = speed - .1;
$(".box").setSpeed(speed); // how would I write setSpeed (degree would be set in here too)?
}
我不知道通过脚本更改动画属性的最佳方法。尤其是在动画中间更改持续时间时,我完全不确定这是否可行。谢谢。