jQuery模拟窗口抖动效果


Posted in Javascript onMarch 15, 2017

效果图:

jQuery模拟窗口抖动效果

代码如下:

<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8" />
 <title>jQuery模拟窗口抖动</title>
 <style type="text/css">
  input{margin-top: 20px;}
  .center{margin-left: 50%;transform: translate(-50%);}
  .img{display:block;position:absolute;top:100px;}
 </style>
</head>
<body>
 <img src="http://mpic.tiankong.com/60b/994/60b994dc105a7b76b25e116733a142e9/431-0248.jpg" class="img center" />
 <input type="button" class="center" value="模拟窗口抖动" />
 <script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.1.0.js" type="text/javascript"></script>
 <script type="text/javascript">
  $(":button").click(function () {
   var len = 4, //晃动的距离,单位像素
   c = 16, //晃动次数,4次一圈
   step = 0, //计数器
   img = $("img"),
   off = img.offset();
   this.step = 0;
   timer = setInterval(function () {
    var set = pos();
    img.offset({ top: off.top + set.y * len, left: off.left + set.x * len });
    if (step++ >= c) {
     img.offset({ top: off.top, left: off.left }); //抖动结束回归原位
     clearInterval(timer);

    }
    // console.log(step)
   }, 45);
  });
  function pos() {
   this.step = this.step ? this.step : 0;
   this.step = this.step == 4 ? 0 : this.step;
   var set = {
    0: { x: 0, y: -1 },
    1: { x: -1, y: 0 },
    2: { x: 0, y: 1 },
    3: { x: 1, y: 0 }
   }
   return set[this.step++];
  }
 </script>
</body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
jquery插件 autoComboBox 下拉框
Dec 22 Javascript
使用jQuery动态加载js脚本文件的方法
Apr 03 Javascript
jQuery 获取/设置/删除DOM元素的属性以a元素为例
May 23 Javascript
javascript正则表达式使用replace()替换手机号的方法
Jan 19 Javascript
DOM基础教程之使用DOM控制表格
Jan 20 Javascript
JavaScript从0开始构思表情插件
Jul 26 Javascript
bootstrap datepicker插件默认英文修改为中文
Jul 28 Javascript
Vue2.0父组件与子组件之间的事件发射与接收实例代码
Sep 19 Javascript
Bootstrap框架建立树形菜单(Tree)的实例代码
Oct 30 Javascript
微信小程序webview实现长按点击识别二维码功能示例
Jan 24 Javascript
vue 实现cli3.0中使用proxy进行代理转发
Oct 30 Javascript
AngularJs的$http发送POST请求,php无法接收Post的数据问题及解决方案
Aug 13 Javascript
利用jQuery实现一个简单的表格上下翻页效果
Mar 14 #Javascript
基于React实现表单数据的添加和删除详解
Mar 14 #Javascript
Node.js 中exports 和 module.exports 的区别
Mar 14 #Javascript
JS检测数组类型的方法小结
Mar 14 #Javascript
轻松理解JavaScript闭包
Mar 14 #Javascript
微信小程序 页面跳转及数据传递详解
Mar 14 #Javascript
JavaScript ES6中export、import与export default的用法和区别
Mar 14 #Javascript
You might like
php Smarty 字符比较代码
2011/02/27 PHP
PHP中的日期时间处理利器实例(Carbon)
2017/06/09 PHP
PHP常用日期加减计算方法实例小结
2018/07/31 PHP
Thinkphp 框架基础之源码获取、环境要求与目录结构分析
2020/04/27 PHP
javascript的函数
2007/01/31 Javascript
AJAX架构之Dojo篇
2007/04/10 Javascript
Jquery submit()无法提交问题
2013/04/21 Javascript
JS实现点击图片在当前页面放大并可关闭的漂亮效果
2013/10/18 Javascript
ExtJS4中的requires使用方法示例介绍
2013/12/03 Javascript
js 通用订单代码
2013/12/23 Javascript
eclipse导入jquery包后报错的解决方法
2014/02/17 Javascript
JS生成不重复随机数组的函数代码
2014/06/10 Javascript
AngularJS入门教程(零):引导程序
2014/12/06 Javascript
JavaScript获取服务器时间的方法详解
2016/12/11 Javascript
Node.js中多进程模块Cluster的介绍与使用
2017/05/27 Javascript
浅谈事件冒泡、事件委托、jQuery元素节点操作、滚轮事件与函数节流
2017/07/22 jQuery
使用Nuxt.js改造已有项目的方法
2018/08/07 Javascript
js canvas画布实现高斯模糊效果
2018/11/27 Javascript
JS字符串与二进制的相互转化实例代码详解
2019/06/28 Javascript
javascript中call,apply,callee,caller用法实例分析
2019/07/24 Javascript
解析原来浏览器原生支持JS Base64编码解码
2019/08/12 Javascript
基于纯JS实现多张图片的懒加载Lazy过程解析
2019/10/14 Javascript
在vue中实现echarts随窗体变化
2020/07/27 Javascript
nodeJs项目在阿里云的简单部署
2020/11/27 NodeJs
简介Django中内置的一些中间件
2015/07/24 Python
解析Python中的生成器及其与迭代器的差异
2016/06/20 Python
Windows下的Jupyter Notebook 安装与自定义启动(图文详解)
2018/02/21 Python
基于python cut和qcut的用法及区别详解
2019/11/22 Python
Python计算公交发车时间的完整代码
2020/02/12 Python
台湾三立电视电商平台:电电购
2019/09/09 全球购物
心理学专业大学生职业生涯规划范文
2014/02/19 职场文书
物业保安员岗位职责
2014/03/14 职场文书
现货白银电话营销话术
2015/05/29 职场文书
荒岛余生观后感
2015/06/09 职场文书
教师节大会主持词
2015/07/06 职场文书
总结Python常用的魔法方法
2021/05/25 Python