多物体任意值运动框架(雏型)

 1 //获取对象样式属性
 2 function getStyle(obj, attr)
 3 {
 4     if(obj.currentStyle)
 5     {
 6         return obj.currentStyle[attr];
 7     }
 8     else
 9     {
10         return getComputedStyle(obj, false)[attr];
11     }
12 }
13 
14 //多物体任何值运动框架
15 function elemsMove(obj, attr, iTarget, fn)
16 {
17     if(obj.timer)
18     {
19         clearInterval(obj.timer);
20     }
21     var repeat = function()
22     {
23         //用getStyle函数获取通用样式值
24         var iStyle = 0;
25 
26         //为支持透明度做判断处理
27         if(attr == 'opacity')
28         {
29             //为ispeed处理数为整数需*100,同时为避免使用小数需再取整
30             iStyle = parseInt(parseFloat(getStyle(obj, attr)) * 100);
31         }
32         else
33         {
34             iStyle = parseInt(getStyle(obj, attr));
35         }
36 
37         var ispeed = (parseInt(iTarget) - iStyle) / 8;
38         ispeed = ispeed > 0 ? Math.ceil(ispeed) : Math.floor(ispeed);
39 
40         if(iStyle == iTarget)
41         {
42             clearInterval(obj.timer);
43             if(fn)
44             {
45                 fn();
46             }
47         }
48         else
49         {
50             if(attr == 'opacity')
51             {
52                 obj.style.filter = 'alpha(opacity:' + (iStyle + ispeed) + ')';
53                 obj.style.opacity = (iStyle + ispeed) / 100;
54             }
55             else
56             {
57                 obj.style[attr] = iStyle + ispeed + 'px';
58             }
59         }
60     };
61     obj.timer = setInterval(repeat, 30);
62 }

 

转载于:https://www.cnblogs.com/crabb/p/3373617.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值