move.js
2024-09-29 02:09:22
function startMove(obj,json,fn){
var flag=true;//标志所有运动是否到达目标值
clearInterval(obj.timer);
obj.timer=setInterval(function(){
for(var attr in json){
var curr=0;
//判断是否为透明度
if(attr=='opacity'){
curr=Math.round(parseFloat(getStyle(obj,attr))*100);
}else{
curr=parseInt(getStyle(obj,attr));
}
//移动速度处理
var speed=0;
speed=(json[attr]-curr)/10;
speed=speed>0?Math.ceil(speed):Math.floor(speed);
if(curr!=json[attr]){
flag=false;
}
if (attr=='opacity') {
obj.style.filter='alpha(opacity:'+(curr+speed)+")";
obj.style.opacity=(curr+speed)/100;
}else{
obj.style[attr]=curr+speed+'px';
}
}
if(flag){
clearInterval(obj.timer);
if(fn){
fu();
}
}
},30);
} //取样式
function getStyle(obj,attr){
if(obj.currentStyle){//IE取样式
return obj.currentStyle[attr];
}else{
return getComputedStyle(obj,false)[attr];
} }
最新文章
- JS面向对象(2) -- this的使用,对象之间的赋值,for...in语句,delete使用,成员方法,json对象的使用,prototype的使用,原型继承与原型链
- 翻译:AKKA笔记 - 介绍Actors
- NOIP2010提高组 机器翻译 -SilverN
- 转 浅谈算法和数据结构: 十 平衡查找树之B树
- java8 函数式编程
- Osmocom-BB中cell_log的多种使用姿势
- 使用Visual Studio 2013对windows应用商店应用进行编码的UI测试
- 学习笔记-[Maven实战]-第三章:Maven使用入门(1)
- 中断下半部-tasklet
- Tiny210v2( S5PV210 )平台下创建基本根文件系统
- vs当前不会命中断点,还没有为该文档加载任何符号
- [python]目录及文件操作
- Kubernetes与容器设计模式
- GIT 分支管理:多人协作
- 个人博客作业-Week2 (代码规范, 代码复审)
- Hibernate的核心对象关系映射
- 林帆:Docker运行GUI软件的方法
- Daily Scrumming* 2015.12.13(Day 5)
- 第1章 Ansible 简介
- GlusterFS六大卷模式說明