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 相关文章推荐
JavaScript实现常用二级省市级联下拉列表的方法
Mar 25 Javascript
利用JavaScript的AngularJS库制作电子名片的方法
Jun 18 Javascript
jquery实现简单的全选和反选功能
Jan 02 Javascript
JS动态改变浏览器标题的方法
Apr 06 Javascript
jQuery Ajax 全局调用封装实例代码详解
Jun 02 Javascript
JS 动态判断PC和手机浏览器实现代码
Sep 21 Javascript
Jquery和Js获得元素标签名称的方法总结
Oct 08 Javascript
微信小程序 支付功能实现PHP实例详解
May 12 Javascript
vue 根据数组中某一项的值进行排序的方法
Aug 30 Javascript
vue父子模板传值问题解决方法案例分析
Feb 26 Javascript
JavaScript中break、continue和return的用法区别实例分析
Mar 02 Javascript
基于vue中的scoped坑点解说
Sep 04 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
php的大小写敏感问题整理
2011/12/29 PHP
PHP针对常规模板引擎中与CSS/JSON冲突的解决方法
2014/08/19 PHP
PHP图片自动裁切应付不同尺寸的显示
2014/10/16 PHP
10个实用的PHP正则表达式汇总
2014/10/23 PHP
php生成随机颜色方法汇总
2014/12/03 PHP
将string解析为json的几种方式小结
2010/11/11 Javascript
JavaScript计算字符串中每个字符出现次数的小例子
2013/07/02 Javascript
JS简单的图片放大缩小的两种方法
2013/11/11 Javascript
javascript数据类型示例分享
2015/01/19 Javascript
BootStrap的alert提示框的关闭后再显示怎么解决
2016/05/17 Javascript
JavaScript判断是否是微信浏览器
2016/06/13 Javascript
浅谈JS运算符&amp;&amp;和|| 及其优先级
2016/08/10 Javascript
利用JS轻松实现获取表单数据
2016/12/06 Javascript
JS实现按钮控制计时开始和停止功能
2017/07/27 Javascript
Vue2.0利用vue-resource上传文件到七牛的实例代码
2017/07/28 Javascript
Bootstrap与Angularjs的模态框实例代码
2017/08/03 Javascript
打通前后端构建一个Vue+Express的开发环境
2018/07/17 Javascript
详解在vue-cli中使用graphql即vue-apollo的用法
2018/09/08 Javascript
Vue动态加载异步组件的方法
2018/11/21 Javascript
微信小程序页面传多个参数跳转页面的实现方法
2019/05/17 Javascript
微信小程序结合Storage实现搜索历史效果
2019/05/18 Javascript
详解钉钉小程序组件之自定义模态框(弹窗封装实现)
2020/03/07 Javascript
一篇超完整的Vue新手入门指导教程
2020/11/18 Vue.js
vue+echarts实现中国地图流动效果(步骤详解)
2021/01/27 Vue.js
python动态参数用法实例分析
2015/05/25 Python
实例讲解Python的函数闭包使用中应注意的问题
2016/06/20 Python
python使用fork实现守护进程的方法
2017/11/16 Python
Python使用Pyqt5实现简易浏览器(最新版本测试过)
2020/04/27 Python
Python decimal模块使用方法详解
2020/06/08 Python
pycharm Tab键设置成4个空格的操作
2021/02/26 Python
细说CSS3中box属性中的overflow-x属性和overflow-y属性值的效果
2014/07/21 HTML / CSS
加拿大百叶窗和窗帘定制网站:Blinds
2017/01/30 全球购物
UGG澳洲官网:UGG Australia
2018/04/26 全球购物
群众路线教育实践活动个人对照检查材料思想汇报(社区班子)
2014/10/06 职场文书
大学军训的体会
2014/11/08 职场文书
使用Pytorch训练two-head网络的操作
2021/05/28 Python