jQuery模拟窗口抖动效果
更新时间:2017年03月15日 08:50:14 作者:lqm123
本文主要介绍了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>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!
相关文章
使用jquery获取url以及jquery获取url参数的实现方法
下面小编就为大家带来一篇使用jquery获取url以及jquery获取url参数的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧2016-05-05
关于hashchangebroker和statehashable的补充文档
我觉得之前写的两篇随笔有点不负责任,完全没写明白,补充了一份文档(权且算是文档吧=.=)2011-08-08
jquery UI Datepicker时间控件冲突问题解决
这篇文章主要介绍了jquery UI Datepicker时间控件冲突问题的解决,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2016-12-12
jQuery如何实现点击页面获得当前点击元素的id或其他信息
点击页面获得当前点击元素的id或者其他信息,使用jquery可以轻松做到这一点,下面有个不错的示例,希望对大家有所帮助2014-01-01


最新评论