2016-06-01 抖动

1.点击图片实现抖动

    <script src="js/domoveandgetstyle.js"></script>
    <script>
        window.onload=function(){
            var img = document.getElementById("img");
            var arr=[];//20 -20 18 -18 ...0
            var num=0;//操作数组,一般要用到的下标
            var timer=null;//取消定时器用
            var postion=getStyle(img,‘left‘);//获取img的当前位置
            for(var i=20; i>0; i-=2){
                arr.push(i,-i);
            }
            //alert(arr)//20 -20 18 -18 ...0
            img.onclick=function(){//点击图片触发定时器
                timer=setInterval(function(){
                    img.style.left=postion+arr[num]+‘px‘;
                    num++;
                    if(num==arr.length){//如果到数组的末尾,清除定时器
                        clearInterval(timer);
                    }
                },50);
            }
        }
    </script>
</head>
<body>
<img id="img" src="images/photo_04.jpg" style="width: 400px ; height: 400px;position:absolute;left: 300px" />
</body>

 2. domoveandgetstyle.js

/**
 * Created by ckang on 2016/6/1.
 */
function doMove(obj,attr,stepLength,target,animationVelocity){
    stepLength=(getStyle(obj,attr)<target?stepLength:-stepLength);//如果obj所处的位置小于目标位置,则步长取正数,反之取负数
    clearInterval(obj.timer);
    odiv.timer=setInterval(function(){
        var speed =getStyle(obj,attr)+stepLength;//步长
        if(speed>target && stepLength>0 || speed<target && stepLength<0){
            speed=target;
        }
        obj.style[attr]=speed+‘px‘;//每隔animationVelocity秒 移动stepLength px
        if(speed==target){//停止移动
            clearInterval(obj.timer);
        }
    },animationVelocity);
}

function getStyle(obj,attr){//为什么要parseInt(),因为obj.currentStyle[attr] 拿到的是30px -->30 拿到元素的属性的值 如位置等信息
    return parseInt(obj.currentStyle?obj.currentStyle[attr]:getComputedStyle(obj)[attr]) ;
}
时间: 2024-11-08 22:55:18

2016-06-01 抖动的相关文章

Cheatsheet: 2016 06.01 ~ 6.30

Other Swift for the Java guy: Part 1 – Getting Started Building a better code review process Creating Your Code Review Checklist Serverless Architectures Stop saying learning to code is easy. MongoDB Shard Key Examples Otto: The Next Generation of Va

JavaScript基础系列目录(2014.06.01~2014.06.08)

下列文章,转载请亲注明链接出处,谢谢! 链接地址: http://www.cnblogs.com/ttcc/tag/JavaScript%20%E5%9F%BA%E7%A1%80%E7%9F%A5%E8%AF%86%20%E6%80%BB%E7%BB%93/ 1. Javascript基础---语法(待完成) 2. JavaScript基础---数据类型(待完成) 3. JavaScript基础---Array数组(待完成) 4. JavaScript基础---正则表达式(待完成) 5. Jav

Cheatsheet: 2014 06.01 ~ 06.30

Mobile Developing iOS8 Apps Using Swift – Part 1- Hello World The Insider's Guide to Android Interviewing iOS8 – How to use Objective-C Classes in Swift Developing iOS8 Apps Using Swift – Part 2 – Connect to the iTunes Search API A Swift Tour Swift C

http://stormzhang.com/opensource/2016/06/26/android-open-source-project-recommend1/

转载自:http://stormzhang.com/opensource/2016/06/26/android-open-source-project-recommend1/ 推荐他的所有博文~ 图片加载几乎是任何 Android 项目中必备的需求,而图片加载的开源库也越来越多,我们姑且在 GitHub 上搜索下 android image 关键字,出来的前五个按照 Star 数排序的项目如下: 可以看到前四个是大家比较熟知的图片加载库,有 UniversalImageLoader.Picass

分布式技术一周技术动态 2016.06.26

分布式系统实践 1. 微信自研生产级paxos类库PhxPaxos实现原理介绍 https://mp.weixin.qq.com/s?__biz=MzI4NDMyNTU2Mw==&mid=2247483695&idx=1&sn=91ea422913fc62579e020e941d1d059e&scene=1&srcid=0622W8Tr7wxlyNqJPBzr4iWK&key=77421cf58af4a6537009f11daea42e134e8766d15

2016年01月MVP开始申请了~[截止时间:10月23日]

51CTO与微软中国合作长期为用户提供申请"微软最有价值专家"的平台希望有兴趣.资历的朋友以及正在朝这个方向努力的朋友能够积极参与只要您想参与我们将为您向微软推荐 微软最有价值专家MVP一年评选4次分别为每年的1月.4月.7月.10月.2016年1月的MVP申请截止时间是2015年10月23日. 申请MVP的午饭请下载2016年1月MVP申请表填好后发送到[email protected].我们会在每次MVP申请开始时把用户提交的申请表格推荐到微软中国相关部门 [调整说明]目前的奖励类

【谜客帝国】第78届月思主擂谜会(2016.06.30)

[谜客帝国]第78届月思主擂谜会(2016.06.30) 主持:瓷 计分:手手 1.“卧听疏雨落椒房”(12笔字)渥/月思 [注:面出<明诗杂抄>佚名作<拟宫体旧题>.] 2. 克用之子灭后梁(8笔字)林/月思 [注:典据<五代史>:李存勖灭后梁,实现其父李克用遗愿.] 3. 北宋五鬼,王相占先(2字漫画家)米二/月思 [注:典据<宋史·王钦若传>,“宰相恤恩,未有钦若比者……与丁谓.林特.陈彭年.刘承珪,时谓之‘五鬼’,奸邪险伪.”] 4.“经年多病自心惊

工作周记 - 第六周 (2016/06/27 - 2016/07/01)

1.搭建定时任务quartz 本来是打算把定时任务放入后台管理中,这样目前没问题,但是弱后期加入权限管理-shiro,那么肯定有冲突的,原因是最新版的shiro会使用quartz-1.6版本,而最新的quartz已经到了2.3 有人索性把quartz版本降到了1.6,这样就没问题,我想这样不好,2.3的新功能都用不到,1.6多多少少肯定会有一定bug,所以就另开了一个项目作为定时任务,虽然现阶段的任务量少,但是后期一定会多起来,比如定时报表,定时跑批等等 这样也省的把原来的任务再分离出来,这么做

2016.12.01 搭建dendroid备忘

在2014年的时候看了freebuf的那篇,感觉很6,2014年搭了就一遍成功了,事过两年,物是人非啊,2016搞了云,没事测试,搞了一遍死活不成功,第二天测试成功,过程逗比坎坷,没什么难的 //环境 //服务端:腾讯云 centos 6.5(1G内存 8G硬盘)+ mysql+ php5.4 还有phpmyadmin+ apache(腾讯云的配套环境)(关闭防火墙和selinux) //被控端:lgg3 安卓4.4.2 api19(已root) + (后续找其他未root手机测试) //工具:

2016.06日志

01 自制os,成功用汇编语言在bootsector末尾屏幕打印一首诗. 02 工作中挖了个坑,还是靠别人解决的,本质是python方面经验不足.这种语言.这种IDE真蛋疼,我新建file,后缀为.py同新建python module有什么区别吗? 自制OS稳步前进,今天的重点是总结,画了幅图: 03 工作开始糟糕的体验 -- 白盒测试.加上感冒带来的不适.真他妈的不爽! 回家以后继续自制OS,今天成功进入32位,且导入了C语言.虽然目前启动后屏幕是一片漆黑,但我知道内在已经发生了天翻地覆的变化