我想学习javascript的动画效果这块,但一直不知道怎么下手学习。现在写的javascript代码没一点动画效果,感觉很呆板。注意回答jquery就免了,我只追求用javascript写出来。我只求出现这个效果,但代码要简洁。 效果是:页面随便一个div层,向一个方向有速度的移动就行了。  例如好多网站的右下角,由下至上的弹出一个层,不是突然出现的,有过渡效果。最好也能兼容非IE内核的浏览器。谢谢了!

解决方案 »

  1.   

    div 绝对定位setInterval(); 设置坐标就ok
      

  2.   

     最经典的是这段代码:
    R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24; x4=300; y4=200; x5=300; y5=200; DI=document.images; DIL=DI.length; function A(){for(i=0; i-DIL; i++){DIS=DI[i].style; DIS.position='absolute'; DIS.left=Math.sin(R*x1+i*x2+x3)*x4+x5; DIS.top=Math.cos(R*y1+i*y2+y3)*y4+y5}R++}setInterval('A()',5);直接粘贴到地址栏,网页图片有做圆周运动。
      

  3.   


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
     <head>
      <title> New Document </title>
      <meta name="Generator" content="EditPlus">
      <meta name="Author" content="">
      <meta name="Keywords" content="">
      <meta name="Description" content="">
     </head>
    <style type="text/css">
    div{width:100px;height:100px;background:blue;position:absolute;left:-100px;top:0px;}</style>
     <body>
      <div></div>
      <input type="button" value="start" onclick="a()"/>
    </body>
    <script type="text/javascript">
    var div=document.getElementsByTagName("div")[0];
    var i=0,j=0;
    function a(){
    var cTime;
    i+=20;
    j+=0.1
    div.style.left=i+"px";
    div.style.opacity=j+"";
    cTime=setTimeout(a,40);
    if(div.style.left=="400px"){ clearTimeout(cTime);
    }
    }</script>
    </html>