简单JS动画实例 广告移动效果

主要使用方法

网页可见区域宽: document.body.clientWidth;
网页可见区域高: document.body.clientHeight;

网页可见区域宽: document.body.offsetWidth (包括边线的宽);
网页可见区域高: document.body.offsetHeight (包括边线的宽);

 

setInterval

setInterval动作的作用是在播放动画的时,每隔一定时间就调用函数,方法或对象。可以使用本动作更新来自数据库的变量或更新时间显示。

setInterval动作的语法格式如下:

      setInterval(function,interval[,arg1,arg2,......argn])
      setInterval(object,methodName,interval[,arg1,arg2,.....argn])

      第一种格式是标准动作面板中setInterval函数的默认语法,第二种格式是在专家模式动作中使用的方法。
      参数function是一个函数名或者一个对匿名函数的引用。
      object参数指定从Object对象派生的对象。methodName制定object参数中要调用的方法。
      interval制定对function或methodName调用两次之间的时间,单位是毫秒。后面的arg1等是可选的参数,用于制定传递给function或是methodName的参数。
      setInterval它设置的时间间隔小于动画帧速(如每秒10帧,相当于100毫秒),则按照尽可能接近interval的时间间隔调用函数。而且必 须使用updateAfterEvent动作来确保以足够的频率刷新屏幕。如果interval大于动画帧速,则只用在每次播放头进入某一帧是才调用,以 减小每次刷新屏幕的影响。

clearInterval

clearInterval动作的作用是清除对setInterval函数的调用

它的语法格式如下:
      clearInterval(intervalid);   //intervalid是调用setInterval函数后返回的对象。

 

广告移动效果 实例

 

<html>
    <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8">
        <title>简单JS动画实例 广告移动效果</title>
    </head>
    <body>
        <div id="one" style="background-color:red;  position:absolute; left:0; top:0; height:100px; height:100px;  ">
            移动广告
        </div>

        <script type="text/javascript">
            var x=0;        //对象X轴位置
            var y=0;        //对象Y轴位置
            var xs = 10;    //对象X轴移动速度
            var ys = 10;    //对象Y轴移动速度

            var one = document.getElementById('one'); 

            function move(){
                x += xs; 
                y += ys; 
                one.style.left = x; 
                one.style.top = y; 
                if (x > document.body.clientWidth - one.offsetWidth-20 || x<0) {
                    xs = -1*xs;         //速度取反
                }

                if (y > document.body.clientHeight - one.offsetHeight-20 || y<0){
                    ys = -1*ys; 
                }
            }
            var obj = setInterval('move()',  100); 

            one.onmouseover = function(){   //
                clearInterval(obj); 
            }

            one.onmouseout = function (){
                obj = setInterval('move()',  100); 
            }

        </script>
    </body>
</html>

 

 

原文地址:https://www.cnblogs.com/ybbqg/p/2540364.html