js第九节-定时器的管理,函数封装

js第九节-定时器的管理,函数封装

一、函数的封装

1.元素移动的函数封装

//封装函数-->让某某对象自动移动到某位置的封装函数
//obj-->传入的对象 attr-->传入的是属性值 dir-->步进值 target-->移动到指定位置的值 //endFn-->有没有回调函数。注意:前进时target一定是大于dir的,后退则一定是小于target的
function turnDir(obj,attr,dir,target,endFn){
//+20  >  900
//-20  <  10
    //dir = parseInt(getStyle(obj,attr)) < target ? dir : -dir;
    clearInterval(obj.timer);
    obj.timer = setInterval(function(){
    var speed = parseInt(getStyle(obj,attr));
    speed =  speed + dir;
    
    if(dir >= 0  && speed > target){
           speed = target;
    }
    if(dir < 0 && speed < target){
           speed = target;
    }
           
   obj.style[attr] = speed + 'px';
    
    if(speed == target ){
      //alert(getStyle(obj,attr));
      clearInterval(obj.timer);
     /* if(endFn){
         endFn();
      }*/
      endFn && endFn();
    }
    },30);
};

2.获取元素的样式的函数封装

//属性的调用
//obj-->传入的对象 attr-->传入的是属性值
function getStyle(obj,attr){
return  obj.currentStyle ? obj.currentStyle[attr] : getComputedStyle( obj,100)[attr];};


function $(a){
    if(typeof a === 'function'){
        window.onload = a;
    }else if(typeof a === 'object'){
        return a;
    }else if(typeof a ===

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值