基础 - 动画函数的初步封装
2016-08-17 10:30
267 查看
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/WeWeZ/article/details/52228560
小数的取整
WHY? JS不能精准的表示小数
Math.round() 四舍五入取整
Math.ceil() 向上取整
Math.floor() 向下取整
属性的访问
点语法
[""]法
得到内嵌和外链的CSS
IE Opera currentStyle
其他 getComputedStyle第二个参数为伪类
兼容写法
function funGetStyle(obj,attr) { return obj.currentStyle?obj.currentStyle[attr]:getComputedStyle(obj,null)[attr]; }
JSON的遍历
var JSON = {"name":"WeWeZhang","hobby":"money"}; for (var key in JSON) { console.log("键"+key+"值"+JSON[key]) } in运算符 var bIsContain = string in array;
初步封装动画函数
function funGetStyle(obj,attr) { return obj.currentStyle?obj.currentStyle[attr]:getComputedStyle(obj,null)[attr]; } function funAnimateStart(obj,JSON,funFinish) { funAnimateStop(obj); funMove(obj,JSON,funFinish); obj.timer = setInterval(function () { funMove(obj,JSON,funFinish); },30); } function funAnimateStop(obj) { if(obj.timer) clearInterval(obj.timer); } function funMove(obj,JSON,funFinish) { obj.bIsStop = true; for(var key in JSON) { funMoveDetial(obj,key,JSON[key]); } if (obj.bIsStop) { funAnimateStop(obj); if (funFinish) funFinish(); } } function funMoveDetial(obj,attr,target) { if (attr=="opacity") { obj.value = Math.round(parseFloat(funGetStyle(obj,"opacity"))*100); }else{ obj.value = parseInt(funGetStyle(obj, attr)); } if (target == obj.value) return; var nChaZhi = (target- obj.value) / 50; obj.step = nChaZhi > 0 ? Math.ceil(nChaZhi) : Math.floor[nChaZhi]; obj.value += obj.step; if (attr=="opacity") { if ("opacity" in obj.style) { obj.style.opacity = obj.value*0.01 }else{ obj.style.filter = "alpha(opacity = "+obj.value+")"; } }else{ obj.style[key] = obj.value + "px"; } if (target == obj.value) return; obj.bIsStop = false; }
相关文章推荐
- 根据动画原理,初步封装 运动函数
- 根据动画原理,初步封装运动函数 2
- 轮播图缓慢动画完整封装函数代码
- 关于动画缓动函数的封装
- theano学习初步(二) 基础Tensor函数
- 封装缓动动画函数
- scroll()+client()函数封装+返回当前样式+动画多属性框架封装-兼容写法
- js基础03特效简单响应式页面布局client()函数封装
- JS动画函数的封装
- python爬虫基础封装函数
- js基础学习之--关于 Cookie 的增删改查的封装函数
- 第59天:缓动动画封装函数
- [stm32] 利用uc-gui封装画图和画线函数移植51上的模拟动画
- java基础<面向对象>总结(函数、封装、继承、多态)
- uname函数初步封装
- 黑马程序员==》java基础 函数的初步了解
- 动画—Core Animation初步学习二: 基础动画
- javascript 面向对象基础(一)对象组成及函数封装
- [妙味JS基础]第九课:定时器管理、函数封装
- 动画函数测试封装