javascript抖动元素的小例子


Posted in Javascript onOctober 28, 2013
 <!doctype html>
 <html lang="zh">
 <head>
     <meta charset="utf-8">
     <title>xxxxxx</title>
     <style>
     #control {
         height: 100px;
         width: 100%;
         background: gray;
     }
     </style>
     <script>
     function shake(e, onComplete, distance, interval)
     {
         if (typeof e === "string")
         {
             e = document.getElementById(e);
         } // end if
         distance = distance || 8;
         interval = interval || 800;
         var originalStyle = e.style.cssText;
         e.style.position = "relative";
         var start = (new Date()).getTime();
         animate();
         function animate()
         {
             var now = (new Date()).getTime();
             var elapsed = now - start;
             var progress = elapsed / interval;
             if (progress < 1)
             {
                 var y = distance * Math.sin(Math.PI * progress * 4);
                 var x = distance * Math.cos(Math.PI * progress * 4);
                 e.style.left = x + "px";
                 e.style.top = y + "px";
                 console.log(e.style.cssText);
                 setTimeout(animate, Math.min(25, elapsed));
             } // end if
             else
             {
                 e.style.cssText = originalStyle;
                 if (onComplete)
                 {
                     onComplete(e);
                 } // end if
             } // end else
         } // end animate()
     } // end shake()
     </script>
 </head>
 <body>
     <div id="control" onclick="shake(this);">
     </div>
 </div>
 </body>
 </html>
Javascript 相关文章推荐
JS判断元素为数字的奇异写法分享
Aug 01 Javascript
js实现单一html页面两套css切换代码
Apr 11 Javascript
Extjs优化(一)删除冗余代码提高运行速度
Apr 15 Javascript
代码触发js事件(click、change)示例应用
Dec 13 Javascript
信息页文内画中画广告js实现代码(文中加载广告方式)
Jan 03 Javascript
js精准的倒计时函数分享
Jun 29 Javascript
浅析JS中常用类型转换及运算符表达式
Jul 23 Javascript
Vue2.0基于vue-cli+webpack同级组件之间的通信教程(推荐)
Sep 14 Javascript
解决easyui日期时间框ie的兼容的问题
Mar 01 Javascript
模块化react-router配置方法详解
Jun 03 Javascript
vue-next/runtime-core 源码阅读指南详解
Oct 25 Javascript
antd日期选择器禁止选择当天之前的时间操作
Oct 29 Javascript
replace()方法查找字符使用示例
Oct 28 #Javascript
JS 如何获取radio选中后的值及不选择取radio的值
Oct 28 #Javascript
Document:getElementsByName()使用方法及示例
Oct 28 #Javascript
JS截取字符串常用方法详细整理
Oct 28 #Javascript
js自动生成对象的属性示例代码
Oct 28 #Javascript
js实现点小图看大图效果的思路及示例代码
Oct 28 #Javascript
javascript:void(0)的作用示例介绍
Oct 28 #Javascript
You might like
php smarty模版引擎中的缓存应用
2009/12/11 PHP
判断是否为指定长度内字符串的php函数
2010/02/16 PHP
php基于curl实现随机ip地址抓取内容的方法
2016/10/11 PHP
利用PHPExcel实现Excel文件的写入和读取
2017/04/26 PHP
PHP后期静态绑定之self::限制实例分析
2018/12/21 PHP
使用JQuery和s3captche实现一个水果名字的验证
2009/08/14 Javascript
javascript中的对象创建 实例附注释
2011/02/08 Javascript
Extjs4 Treegrid 使用心得分享(经验篇)
2013/07/01 Javascript
qq悬浮代码(兼容各个浏览器)
2014/01/29 Javascript
AngularJS入门教程之学习环境搭建
2014/12/06 Javascript
JavaScript设计模式之外观模式介绍
2014/12/28 Javascript
Javascript实现飞动广告效果的方法
2015/05/25 Javascript
BOM系列第一篇之定时器setTimeout和setInterval
2016/08/17 Javascript
基于AngularJS实现iOS8自带的计算器
2016/09/12 Javascript
微信小程序 HTTPS报错整理常见问题及解决方案
2016/12/14 Javascript
JavaScript实现同一个页面打开多张图片
2016/12/29 Javascript
详解使用React全家桶搭建一个后台管理系统
2017/11/04 Javascript
微信小程序学习笔记之本地数据缓存功能详解
2019/03/29 Javascript
Vue 刷新当前路由的实现代码
2019/09/26 Javascript
[01:33:30]DOTA2-DPC中国联赛 正赛 RNG vs Phoenix BO3 第二场 2月5日
2021/03/11 DOTA
Python ORM框架SQLAlchemy学习笔记之映射类使用实例和Session会话介绍
2014/06/10 Python
Python中的闭包总结
2014/09/18 Python
Python入门篇之字典
2014/10/17 Python
python装饰器实例大详解
2017/10/25 Python
python编写计算器功能
2019/10/25 Python
python实现图片插入文字
2019/11/26 Python
tensorflow 变长序列存储实例
2020/01/20 Python
详解基于Jupyter notebooks采用sklearn库实现多元回归方程编程
2020/03/25 Python
娇韵诗香港官网:Clarins香港
2020/08/13 全球购物
如何向接受结构参数的函数传入常数值
2016/02/17 面试题
前台文员职责范本
2014/03/07 职场文书
绿色出行口号
2014/06/18 职场文书
社区母亲节活动总结
2015/02/10 职场文书
业务员管理制度范本
2015/08/06 职场文书
2016年公司新年寄语
2015/08/17 职场文书
关于做家务的心得体会
2016/01/23 职场文书