zoukankan      html  css  js  c++  java
  • js中完美运动框架

    //多个值同时变化
    function getStyle(obj, name)//函数帮助获取不在行间样式,不受非行间border,padding等得影响
    { //style只获取行间样式。offset受非行间border,padding等得影响
      if(obj.currentStyle)
      {
        return obj.currentStyle[name];
      }
      else
      {
        return getComputedStyle(obj, false)[name];
      }
    }
    //startMove(oDiv, { 400, height: 400})

    function startMove(obj, json, fnEnd)//obj运动对象   json用于存放对象的样式和值  fnEnd 用于下一步骤的链式运动
    {
      clearInterval(obj.timer);
      obj.timer=setInterval(function ()

      {
        var bStop=true; //假设:所有值都已经到了

        for(var attr in json)
        {
          var cur=0;
          if(attr=='opacity')
          {
            cur=Math.round(parseFloat(getStyle(obj, attr))*100);
          }
          else
          {
            cur=parseInt(getStyle(obj, attr));
          }

          var speed=(json[attr]-cur)/6;
          speed=speed>0?Math.ceil(speed):Math.floor(speed);

          if(cur!=json[attr])
            bStop=false;

          if(attr=='opacity')
          {
            obj.style.filter='alpha(opacity:'+(cur+speed)+')';
            obj.style.opacity=(cur+speed)/100;
          }
          else
          {
            obj.style[attr]=cur+speed+'px';
          }
        }
        if(bStop)
        {
          clearInterval(obj.timer);

          if(fnEnd)

            fnEnd();
        }
      }, 30);
    }

  • 相关阅读:
    ASP.NET 作业题
    作业题
    作业题...
    作业题
    控件属性
    ASP控件解释
    排序
    5. 用自己的语言描述一下程序连接数据库的过程。
    4. 什么是AJAX
    3.怎样计算页面执行的时间?
  • 原文地址:https://www.cnblogs.com/huan123/p/8010590.html
Copyright © 2011-2022 走看看