CUD*_*UDA 12 javascript animation
我试图在JavaScript中水平div移动动画200px.
下面的代码使它跳过像素,但有没有办法让它看起来不使用jQuery动画?
function () {
var div = document.getElementById('challengeOneImageJavascript');
div.style.left = "200px";
}
Run Code Online (Sandbox Code Playgroud)
Nie*_*sol 45
这是一个基本的动画设置:
function animate(elem,style,unit,from,to,time) {
if( !elem) return;
var start = new Date().getTime(),
timer = setInterval(function() {
var step = Math.min(1,(new Date().getTime()-start)/time);
elem.style[style] = (from+step*(to-from))+unit;
if( step == 1) clearInterval(timer);
},25);
elem.style[style] = from+unit;
}
Run Code Online (Sandbox Code Playgroud)
使用:
animate(
document.getElementById('challengeOneImageJavascript'),
"left","px",0,200,1000
);
Run Code Online (Sandbox Code Playgroud)
此示例将使给定元素的动画在1秒(1000毫秒)的时间内从0px线性滑动到200px.
您可以通过CSS3-Transition轻松完成此操作:
#challengeOneImageJavascript {
-webkit-transition: left .2s;
-moz-transition: left .2s;
-o-transition: left .2s;
transition: left .2s;
}
Run Code Online (Sandbox Code Playgroud)
但是,它不受IE9和早期浏览器版本的支持.
| 归档时间: |
|
| 查看次数: |
20810 次 |
| 最近记录: |