如何实现图片抖动效果


当前第2页 返回上一页

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

<script src="doMove.js"></script>

<script>

    window.onload = function(){

        var img1 = document.getElementById('img1');

 

        img1.onclick = function(){

            // 先获得img1的原来left值,在此基础上进行抖动;parseInt()是把300px的单位去掉只留数字

            var pos = parseInt(getStyle(img1,'left'));

            var arr = [];//20,-20,18,-18,16,-16,...存放抖动的频率

            var timer = null;//开启定时器

            var num = 0;//一般只要有数组,那么必定有数字跟着变化;数组的第0个,第1个...

 

            for(var i =20;i>0;i-=2){//左右抖动的幅度第一次为20px,然后减2

                arr.push(i,-i);

            }

            arr.push(0);

            // alert(arr);//测试一下

            // 有抖动的频率之后,要开启定时器让它进行抖动

            clearInterval(timer);//开启定时器之前要先把定时器关闭,防止连续多次点击

            timer = setInterval(function(){

                img1.style.left = pos + arr[num] + 'px';//原来的位置pos,加上数组中每一个数字

                num++;

                if(num === arr.length){//如果数字等于数组的长度(就是全部抖完了),关闭定时器

                    clearInterval(timer);

                }

            },50);

        }

    }

</script>

说明:

1、要先引入我们原来封装好的动画函数doMove.js,getStyle()函数就是这个函数里面的函数;

2、parseInt( )是把300px的单位去掉只留数字300;

3、上下抖动,只要把left改为top就可以。

以上就是如何实现图片抖动效果的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

css文件中如何引入另一个css文件?(代码示例)

css里怎样调节字体颜色

css中display: inline-block的用法解析

jsp怎么导入css

前端怎么学

在html里用css隐藏div的方法

css中tag是什么意思

css的属性有哪些

vue源码之目录结构的简单分析

css可以去掉浮动吗?

更多相关阅读请进入《css》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...