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 相关文章推荐
用js来解决ajax读取页面乱码
Nov 28 Javascript
js将字符串转成正则表达式的实现方法
Nov 13 Javascript
浅谈JSON和JSONP区别及jQuery的ajax jsonp的使用
Nov 23 Javascript
利用JS实现文字的聚合动画效果
Jan 22 Javascript
详解jQuery中关于Ajax的几个常用的函数
Jul 17 jQuery
JS实现浏览上传文件的代码
Aug 23 Javascript
详解vue-cli 接口代理配置
Dec 13 Javascript
BootStrap中的模态框(modal,弹出层)功能示例代码
Nov 02 Javascript
利用React Router4实现的服务端直出渲染(SSR)
Jan 07 Javascript
Vue配置marked链接添加target=&quot;_blank&quot;的方法
Jul 19 Javascript
微信小程序实现登录注册功能
Dec 29 Javascript
详解如何在Canvas中添加事件的方法
Apr 17 Javascript
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
10 个经典PHP函数
2013/10/17 PHP
wordpress安装过程中遇到中文乱码的处理方法
2015/04/21 PHP
PHP explode()函数的几个应用和implode()函数有什么区别
2015/11/05 PHP
PHP数组操作简单案例分析
2016/10/15 PHP
JavaScript动态创建div属性和样式示例代码
2013/10/09 Javascript
Javascript 修改String 对象 增加去除空格功能(示例代码)
2013/11/30 Javascript
导入extjs、jquery 文件时$使用冲突问题解决方法
2014/01/14 Javascript
JS+CSS实现可拖拽的漂亮圆角特效弹出层完整实例
2015/02/13 Javascript
每天一篇javascript学习小结(Array数组)
2015/11/11 Javascript
JavaScript String 对象常用方法总结
2016/04/28 Javascript
深入浅析Bootstrap列表组组件
2016/05/03 Javascript
判断是否存在子节点的实现代码
2016/05/18 Javascript
Zabbix添加Node.js监控的方法
2016/10/20 Javascript
jquery实现一个全局计时器(商城可用)
2017/06/30 jQuery
Vue-CLI3.x 设置反向代理的方法
2018/12/06 Javascript
超轻量级的js时间库miment使用解析
2019/08/02 Javascript
微信公众号中的JSSDK接入及invalid signature等常见错误问题分析(全面解析)
2020/04/11 Javascript
three.js 制作动态二维码的示例代码
2020/07/31 Javascript
实例讲解python函数式编程
2014/06/09 Python
用ReactJS和Python的Flask框架编写留言板的代码示例
2015/12/19 Python
澳大利亚工具仓库:Tools Warehouse
2018/10/15 全球购物
个人求职简历的自我评价
2013/10/19 职场文书
二年级体育教学反思
2014/01/15 职场文书
语文教学感言
2014/02/06 职场文书
评析教师个人的自我评价
2014/02/19 职场文书
教师纪念9.18事件演讲稿范文
2014/09/14 职场文书
2014年服务员个人工作总结
2014/12/23 职场文书
英语教师个人工作总结
2015/02/09 职场文书
教师党员个人总结
2015/02/10 职场文书
导游词之上饶龟峰
2019/10/25 职场文书
JavaScript 事件捕获冒泡与捕获详情
2021/11/11 Javascript
开机音效回归! Windows 11重新引入开机铃声
2021/11/21 数码科技
阿里云日志过滤器配置日志服务
2022/04/09 Servers
vue-treeselect的基本用法以及解决点击无法出现拉下菜单
2022/04/30 Vue.js
纯CSS打字动画的实现示例
2022/08/05 HTML / CSS
关于MySQL中explain工具的使用
2023/05/08 MySQL