你的位置:首页 > Java教程

[Java教程]javascript实现的动画效果简单实例代码


javascript实现的动画效果简单实例代码:
使用jquery实现动画效果要比原生的javascript要简单的多,因为效果都已经封装好了,一个函数调用就实现了,本章节就介绍一个使用原生javascript实现的简单动画例子,代码实例如下:

 

<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <head><title>javascript实现的简单动画-蚂蚁部落</title><style type="text/css">#mydiv{ width:50px; height:50px; background-color:green; position:absolute;}</style><script type="text/javascript"> window.onload=function(){ var mydiv=document.getElementById("mydiv"); var start=document.getElementById("start"); var stopmove=document.getElementById("stopmove"); var x=0; var flag; function move() {  x=x+1;  mydiv.style.left=x+"px"; } start.onclick=function() {  clearInterval(flag);  flag=setInterval(move,20); } stopmove.onclick=function() {  clearInterval(flag); } }</script><body><input type="button" id="start" value="开始运动" /><input type="button" id="stopmove" value="停止运动" /><div id="mydiv"></div></body></html>

 

以上代码实现了简单的动画效果,下面介绍一下实现过程。
一.实现原理:
原理很简单,就是使用定时器函数不断的调用一个函数来改变div的left属性值,这样就实现了动画效果,点击停止按钮就会调用clearInterval()停止定时器函数。
二.代码注释:
1.window.onload=function(){},当文档内容完全加载完毕再去执行函数中的代码。
2.var mydiv=document.getElementById("mydiv"),获取id属性值为mydiv的元素。
3.var start=document.getElementById("start"),获取id属性hi为start的元素。
4.var stopmove=document.getElementById("stopmove"),获取id属性值为stopmove的元素。
5.var x=0,设置一个变量用来存放设置div元素left属性值。
6.var flag,设置一个变量存放setInterval()返回值。
7.function move(){},创建一个函数用于规定div的运动。
8.x=x+1,固定每次增加的像素。
9.mydiv.style.left=x+"px",设置div的left属性值。
10.start.onclick=function(){},为start元素注册onclick事件处理函数。
11.clearInterval(flag),停止定时器函数,一方多次单击开始按钮造成叠加效果。
12.flag=setInterval(move,20),开始运动。

原文地址是:http://www.softwhy.com/forum.php?mod=viewthread&tid=8310

更多内容可以参阅:http://www.softwhy.com/javascript/