jQuery实现的Div窗口震动效果实例


Posted in Javascript onAugust 07, 2015

本文实例讲述了jQuery实现的Div窗口震动效果。分享给大家供大家参考。具体如下:

这是一款jQuery窗口震动效果代码,在Div边框内点击一下鼠标,它就开始震动了,适用浏览器:IE8、360、FireFox、Chrome、Opera、傲游、搜狗、世界之窗等。

运行效果截图如下:

jQuery实现的Div窗口震动效果实例

具体代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>jquery窗口震动特效</title>
<script type="text/javascript" src="jquery-1.6.2.min.js"></script>
<script type="text/javascript">
;(function($){
 var element = {};
 $.fn.jshaker = function(){
  element = $(this);
  element.css('position', 'relative');
  element.find('*').each(function(i, el){
   $(el).css('position', 'relative');
  });
 var iFunc = function(){ $.fn.jshaker.animate($(element)); };
 setTimeout(iFunc, 50);
 };
 $.fn.jshaker.animate = function(el){
  $.fn.jshaker.shake(el);
 el.find('*').each(function(i, el){
  $.fn.jshaker.shake(el);
 }); 
 var iFunc = function(){ $.fn.jshaker.animate(el); };
 setTimeout(iFunc, 50);
 }
 $.fn.jshaker.shake = function(el){
 var pos = $(el).position();
 if(Math.random() > 0.5){
  $(el).css('top', pos['top'] + Math.random() * 20 < 10 ? (Math.random() * 20 * (-1)) : Math.random() * 20);
 } else {
  $(el).css('left', pos['left'] + Math.random() * 20 < 10 ? (Math.random() * 20 * (-1)) : Math.random() * 20);
 }
 }
})(jQuery);
</script>
<script type="text/javascript">
 $(document).ready(function(){
  $('.block').click(function(){
  $(this).jshaker();
  });
 });
</script>
<style type="text/css">
BODY{font-family: "Lucida Grande", Arial, Helvetica, sans-serif;color: #666666;font-size: 12px;background: #FFFFFF;}
A{color: #0A8ECC;}
A: HOVER{text-decoration: none;color: #8FCB2F;}
H1{font-weight: normal;color: #0A8ECC;margin: 0;padding: 0;}
BODY{margin: 20px;padding: 20px;}
STRONG{color: #000000;}
.vspacer{height: 20px;}
PRE.code{padding: 7px;background: #777777;color: #F0F0F0;width: 400px;overflow: auto;}
#content-area{border: 3px solid #CCCCCC;background: #F0F0F0;padding: 10px;width: 500px;}
P.script-link{clear: both;padding: 10px 0;border-top: 1px dotted #CCCCCC;}
#content .block {float: left;border: 1px solid #CCCCCC;background: #F0F0F0;padding: 10px;margin: 10px;width: 300px;}
</style>
</head>
<body>
 <div id="page">
 <h1>jquery窗口震动特效</h1>
 <div id="content">
  <div class="block">
  <p>点击本框内,可实现震动。。</p>
  <ul>
   <li>Item 1</li>
   <li>Item 2</li>
   <li>
   Item 3
   <ul>
    <li>Sub Item 1</li>
    <li>Sub Item 2</li>
    <li>Sub Item 3</li>
    <li>Sub Item 4</li>
    <li>Sub Item 5</li>
   </ul>
   </li>
   <li>Item 4</li>
   <li>Item 5</li>
  </ul>
  </div>
  <div class="block">
  <form action="#">
   <p><label for="inp1">Text Field 1:</label><input type="text" name="inp1" id="inp1" value="" /></p>
   <p><label for="inp2">Text Field 2:</label><input type="text" name="inp2" id="inp2" value="" /></p>
   <p><button type="submit">Submit</button></p>
  </form>
  </div>
 </div>
 <p class="script-link">
 </p>
 </div>
</body>
</html>

希望本文所述对大家的jquery程序设计有所帮助。

Javascript 相关文章推荐
用jscript实现新建word文档
Jun 15 Javascript
javascript 解析url的search方法
Feb 09 Javascript
javascript对话框使用方法(警告框 javascript确认框 提示框)
Jan 07 Javascript
JavaScript的事件代理和委托实例分析
Mar 25 Javascript
JS数组合并push与concat区别分析
Dec 17 Javascript
js 中获取制定的cook信息实现方法
Nov 19 Javascript
js判断用户是输入的地址请求的路径(实例讲解)
Jul 18 Javascript
Bootstrap实现可折叠分组侧边导航菜单
Mar 07 Javascript
vue 监听键盘回车事件详解 @keyup.enter || @keyup.enter.native
Aug 25 Javascript
小试SVG之新手小白入门教程
Jan 08 Javascript
了解JavaScript函数中的默认参数
May 30 Javascript
vue css 相对路径导入问题级踩坑记录
Jun 05 Vue.js
jQuery实现时尚漂亮的弹出式对话框实例
Aug 07 #Javascript
jquery插件jquery.beforeafter.js实现左右拖拽分隔条对比图片的方法
Aug 07 #Javascript
jQuery基于ajax实现星星评论代码
Aug 07 #Javascript
jQuery实现网页抖动的菜单抖动效果
Aug 07 #Javascript
jQuery实现高亮显示网页关键词的方法
Aug 07 #Javascript
jQuery实现信息提示框(带有圆角框与动画)效果
Aug 07 #Javascript
css如何让浮动元素水平居中
Aug 07 #Javascript
You might like
php使用Jpgraph绘制柱形图的方法
2015/06/10 PHP
PHP正则判断一个变量是否为正整数的方法
2019/02/27 PHP
Display SQL Server Login Mode
2007/06/21 Javascript
最近项目写了一些js,水平有待提高
2009/01/31 Javascript
Javascript连接多个数组不用concat来解决
2014/03/24 Javascript
5个可以帮你理解JavaScript核心闭包和作用域的小例子
2014/10/08 Javascript
Webpack 实现 Node.js 代码热替换
2015/10/22 Javascript
15位和18位身份证JS校验的简单实例
2016/07/18 Javascript
JS正则表达式修饰符global(/g)用法分析
2016/12/27 Javascript
AngularJS实现表单验证功能
2017/01/09 Javascript
浅析JS中的 map, filter, some, every, forEach, for in, for of 用法总结
2017/03/29 Javascript
JS中正则表达式全局匹配模式 /g用法详解
2017/04/01 Javascript
ES6/JavaScript使用技巧分享
2017/12/14 Javascript
JavaScript中Object值合并方法详解
2017/12/22 Javascript
详解Vue 全局引入bass.scss 处理方案
2018/03/26 Javascript
vue基础之v-bind属性、class和style用法分析
2019/03/11 Javascript
微信小程序实现单个或多个倒计时功能
2020/11/01 Javascript
在Vue中使用Echarts可视化库的完整步骤记录
2020/11/18 Vue.js
[32:39]完美世界DOTA2联赛循环赛 Forest vs Inki BO2第一场 11.04
2020/11/04 DOTA
基于pycharm导入模块显示不存在的解决方法
2018/10/13 Python
python利用插值法对折线进行平滑曲线处理
2018/12/25 Python
centos6.5安装python3.7.1之后无法使用pip的解决方案
2019/02/14 Python
Python使用到第三方库PyMuPDF图片与pdf相互转换
2019/05/03 Python
关于不懂Chromedriver如何配置环境变量问题解决方法
2019/06/12 Python
python 随机生成10位数密码的实现代码
2019/06/27 Python
详解Django模版中加载静态文件配置方法
2019/07/21 Python
详解Python中的路径问题
2020/09/02 Python
如何基于Python实现word文档重新排版
2020/09/29 Python
Python基于execjs运行js过程解析
2020/11/27 Python
雅诗兰黛美国官网:Estee Lauder美国
2016/07/21 全球购物
Julep官网:美容产品和指甲油
2017/02/25 全球购物
如果NULL定义成#define NULL((char *)0)难道不就可以向函数传入不加转换的NULL了吗
2012/02/15 面试题
四风问题对照检查整改措施思想报告
2014/10/05 职场文书
大学生学期个人总结
2015/02/12 职场文书
2015年学校教研室主任工作总结
2015/07/20 职场文书
2016抗战胜利71周年红领巾广播稿
2015/12/18 职场文书