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 相关文章推荐
Mootools 1.2教程(21)——类(二)
Sep 15 Javascript
关于ExtJS4.1:快捷键支持的问题
Apr 24 Javascript
基于jquery实现的可编辑下拉框实现代码
Aug 02 Javascript
js仿土豆网带缩略图的焦点图片切换效果实现方法
Feb 23 Javascript
JS设置下拉列表框当前所选值的方法
Dec 22 Javascript
JavaScript中的this机制
Jan 30 Javascript
JavaScript实现时间倒计时跳转(推荐)
Jun 28 Javascript
JS DOMReady事件的六种实现方法总结
Nov 23 Javascript
Vue.js获取被选择的option的value和text值方法
Aug 24 Javascript
Vue开发之封装分页组件与使用示例
Apr 25 Javascript
教你搭建按需加载的Vue组件库(小结)
Jul 29 Javascript
微信小程序自定义菜单切换栏tabbar组件代码实例
Dec 30 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数组函数序列之array_combine() - 数组合并函数使用说明
2011/10/29 PHP
php 伪造本地文件包含漏洞的代码
2011/11/03 PHP
浅谈web上存漏洞及原理分析、防范方法(文件名检测漏洞)
2013/06/29 PHP
怎样搭建PHP开发环境
2015/07/28 PHP
js截取函数(indexOf,join等)
2010/09/01 Javascript
Yii-自定义删除确认弹框(zyd)jquery实现代码
2013/03/04 Javascript
js对图片base64编码字符串进行解码并输出图像示例
2014/03/17 Javascript
seajs加载jquery时提示$ is not a function该怎么解决
2015/10/23 Javascript
JS字符串的切分用法实例
2016/02/22 Javascript
深入浅析JSON.parse()、JSON.stringify()和eval()的作用详解
2016/04/03 Javascript
vue.js 使用v-if v-else发现没有执行解决办法
2017/05/15 Javascript
animate.css在vue项目中的使用教程
2018/08/05 Javascript
详解Vue-axios 设置请求头问题
2018/12/06 Javascript
ES6 Set结构的应用实例分析
2019/06/26 Javascript
原生JavaScript实现五子棋游戏
2020/11/09 Javascript
Vue页面渲染中key的应用实例教程
2021/01/12 Vue.js
python+requests+unittest API接口测试实例(详解)
2017/06/10 Python
基于Python 装饰器装饰类中的方法实例
2018/04/21 Python
Python实现读取txt文件并转换为excel的方法示例
2018/05/17 Python
Python计算时间间隔(精确到微妙)的代码实例
2019/02/26 Python
Django中自定义模型管理器(Manager)及方法
2019/09/23 Python
python 上下文管理器及自定义原理解析
2019/11/19 Python
python+Selenium自动化测试——输入,点击操作
2020/03/06 Python
Python QTimer实现多线程及QSS应用过程解析
2020/07/11 Python
Bench加拿大官方网站:英国城市服装品牌
2017/11/03 全球购物
NYX Professional Makeup英国官网:美国平价专业彩妆品牌
2019/11/13 全球购物
经典c++面试题六
2012/01/18 面试题
腾讯公司的一个sql题
2013/01/22 面试题
法学专业毕业生自荐信范文
2013/12/18 职场文书
小学生国旗下演讲稿
2014/04/25 职场文书
汽车检测与维修专业求职信
2014/07/04 职场文书
新店开张活动方案
2014/08/24 职场文书
小学运动会通讯稿
2015/07/18 职场文书
国际贸易实训总结
2015/08/03 职场文书
学生会干部任命书
2015/09/21 职场文书
民政局2016年“六一”儿童节慰问活动总结
2016/04/06 职场文书