如何在不使用jQuery库的动画方法的情况下在本机JavaScript中运行动画(如更改CSS属性)? 我试过jQuery库动画和framerate间隔更改,使我的动画流体。 在此先感谢原生动画javascript
2
A
回答
2
下面是一个例子:
function animate(object, property, start_value, end_value, time) {
var frame_rate = 0.06; // 60 FPS
var frame = 0;
var delta = (end_value - start_value)/time/frame_rate;
var handle = setInterval(function() {
frame++;
var value = start_value + delta * frame;
object.style[property] = value + "px";
if (value == end_value) {
clearInterval(handle);
}
}, 1/frame_rate);
}
animate(document.getElementById("a"), "top", 0, 100, 1000);
3
CSS3可以使用transition
自动为大多数样式属性设置动画效果。它可能会比使用任何基于JavaScript的动画获得更平滑。
有一个很好的教程,如何使用它,here。
+0
跨浏览器兼容性是一个问题,我不能忽略 –
+0
神话破坏这一个:http://css-tricks.com/myth-busting-css-animations-vs-javascript/ –
0
这里是一个简短演示:
function fade(element, started) {
if (element.style.opacity > 0){
console.log(element.style.opacity);
element.style.opacity -= 0.02;
setTimeout((function(e){return function(){fade(e);}})(element),10);
}
}
fade(document.getElementById("myname"));
这里是一个的jsfiddle:http://jsfiddle.net/s6Kzh/1/
相关问题
- 1. 反应原生动画
- 2. 原生动画模块不可用 - 反应原生
- 3. 反应原生TabBarIOS过渡动画?
- 4. 反应原生动画重复无穷
- 5. 反应原生 - 动画blurRadius的图像
- 6. 如何使反应原生动画?
- 7. 反应原生动画子菜单
- 8. Android动画Flash与HTML5相比,Android的原生动画库?
- 9. CALayer动画还原
- 10. 如何使React原生动画再次发生?
- 11. 使用Javascript生成随机Webkit动画
- 12. 香草JS原生滚动动画不工作的FF
- 13. 生物动画
- 14. 原型JavaScript原生类型,气馁?
- 15. 动画JavaScript滚动
- 16. Javascript Bar动画
- 17. Javascript动画easing
- 18. jquery/Javascript动画
- 19. Javascript/jQuery动画
- 20. JavaScript动画
- 21. Javascript/jquery动画
- 22. 的Javascript动画
- 23. javascript canvas动画
- 24. Bug动画Javascript
- 25. 原点动画的android
- 26. 动画和MVC原理
- 27. CSS3动画,留在原地
- 28. 动画也不回原
- 29. 了解Javascript和React原生
- 30. 覆盖原生Javascript函数
jQuery是开源的,为什么不看看他们的技术? –
为什么不使用CSS3转换?速度更快。 – tjameson