jQuery+css实现炫目的动态块漂移效果


Posted in Javascript onJanuary 28, 2016

本文实例讲述了jQuery+css实现的动态块漂移效果.分享给大家供大家参考,具体如下:

运行效果截图如下:

jQuery+css实现炫目的动态块漂移效果

具体代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title></title>
  <script src="jquery-1.7.1.min.js" type="text/javascript"></script>
  <script type="text/javascript" >
    function createColor() {
      var color = [];
      for (var i = 0; i < 3; i++) {
        color.push(Math.round(Math.random() * 256));
      }
      return "rgb(" + color.join(",") + ")"
    }
    function createRect(left, top, index) {
      var width = Math.round(Math.random() * 150) + 10;
      var height = Math.round(Math.random() * 150) + 10;
      left = left > width ? left - width : left;
      top = top > height ? top - height : top;
      var html = [];
      html.push('<div id="rect_'+index+'" class="rect shadow radius" style="background:');
      html.push(createColor());
      html.push(';left:');
      html.push(left);
      html.push('px;top:');
      html.push(top);
      html.push('px;width:');
      html.push(width);
      html.push('px; height:');
      html.push(height);
      html.push('px;"></div>');
      return html.join("");
    }
    function initRect() {
      var body = $("#body");
      var width = body.width();
      var height = body.height();
      var index = new Date().getTime();
      body.append(createRect(Math.round(Math.random() * width), Math.round(Math.random() * height), index));
      setAnimate(index, height);
    }
    function setAnimate(index, height) {
      var rect = $("#rect_" + index);
      var top = parseInt(rect.position().top);
      var selfHeight = rect.height();
      if (top > height - selfHeight) {
        rect.remove();
        initRect();
      } else {
        var filter = top / height;
        rect.css({ "top": (top + 5) + "px", "opacity": filter });
        setTimeout(function () {
          setAnimate(index, height);
        }, 33);
      }
    }
    function initAllRect() {
      for (var i = 0; i < 20; i++) {
        initRect();
      }
    }
    $(document).ready(function () {
      initAllRect();
    });
  </script>
  <style type="text/css" >
  .rect {
        background:#DDDDDD;
        width:100px;
        height:100px;
        position:absolute;
  }
  .radius 
  {
    border-radius:8px;
      -moz-border-radius:8px;
      -webkit-border-radius:8px;
  }
  .shadow 
  {
    -moz-box-shadow:-5px -5px 5px #999 inset;
      -webkit-box-shadow:-5px -5px 5px #999 inset;
      box-shadow:-5px -5px 5px #999 inset; 
  }
  #body { height:700px; width:100%; background:black; margin:0; }
  </style>
</head>
<body>
<div id="body" class="shadow radius">
</div>
</body>
</html>

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

Javascript 相关文章推荐
取得父标签
Nov 14 Javascript
JS读取XML文件示例代码
Nov 15 Javascript
jquery实现可拖动DIV自定义保存到数据的实例
Nov 20 Javascript
AngularJS ng-blur 指令详解及简单实例
Jul 30 Javascript
JS控制TreeView的结点选择
Nov 11 Javascript
jQuery插件artDialog.js使用与关闭方法示例
Oct 09 jQuery
Vue 中使用 CSS Modules优雅方法
Apr 09 Javascript
vue动态绑定组件子父组件多表单验证功能的实现代码
May 14 Javascript
JS判断字符串是否为整数的方法--简单的正则判断
Jul 23 Javascript
vue.js使用v-model实现表单元素(input) 双向数据绑定功能示例
Mar 08 Javascript
在Vue项目中使用Typescript的实现
Dec 19 Javascript
Javascript call及apply应用场景及实例
Aug 26 Javascript
使用node+vue.js实现SPA应用
Jan 28 #Javascript
jQuery+css实现的tab切换标签(兼容各浏览器)
Jan 28 #Javascript
javascript实现随机显示星星特效
Jan 28 #Javascript
基于javascript实现全国省市二级联动下拉选择菜单
Jan 28 #Javascript
JS实现动态生成表格并提交表格数据向后端
Nov 25 #Javascript
jQuery+css实现的时钟效果(兼容各浏览器)
Jan 27 #Javascript
jQuery实现的分子运动小球碰撞效果
Jan 27 #Javascript
You might like
详细介绍PHP应用提速面面观
2006/10/09 PHP
fetchAll()与mysql_fetch_array()的区别详解
2013/06/05 PHP
PHP中mysql_field_type()函数用法
2014/11/24 PHP
json 定义
2008/06/10 Javascript
JavaScript delete操作符应用实例
2009/01/13 Javascript
Javascript计算时间差的函数分享
2011/07/04 Javascript
JS禁用浏览器退格键实现思路及代码
2013/10/29 Javascript
JavaScript统计字符串中每个字符出现次数完整实例
2016/01/28 Javascript
概述javascript在Google IE中的调试技巧
2016/11/24 Javascript
canvas实现动态小球重叠效果
2017/02/06 Javascript
vue用addRoutes实现动态路由的示例
2017/09/15 Javascript
解决vue页面刷新或者后退参数丢失的问题
2018/03/13 Javascript
详解webpack4多入口、多页面项目构建案例
2018/05/25 Javascript
nodejs实现一个word文档解析器思路详解
2018/08/14 NodeJs
jquery拖拽自动排序插件使用方法详解
2020/07/20 jQuery
Vue中的组件及路由使用实例代码详解
2019/05/22 Javascript
Js参数RSA加密传输之jsencrypt.js的使用
2020/02/07 Javascript
Vue 按照创建时间和当前时间显示操作(刚刚,几小时前,几天前)
2020/09/10 Javascript
python备份文件的脚本
2008/08/11 Python
python正则表达式判断字符串是否是全部小写示例
2013/12/25 Python
Python pyinotify日志监控系统处理日志的方法
2018/03/08 Python
python+selenium实现自动抢票功能实例代码
2018/11/23 Python
pycharm中使用anaconda部署python环境的方法步骤
2018/12/19 Python
python根据文章标题内容自动生成摘要的实例
2019/02/21 Python
python3 tkinter实现点击一个按钮跳出另一个窗口的方法
2019/06/13 Python
Python按照list dict key进行排序过程解析
2020/04/04 Python
把Anaconda中的环境导入到Pycharm里面的方法步骤
2020/10/30 Python
详解HTML5表单新增属性
2016/12/21 HTML / CSS
英国领先的游戏零售商:GAME
2019/09/24 全球购物
一些关于MySql加速和优化的面试题
2014/01/30 面试题
白酒业务员岗位职责
2013/12/27 职场文书
销售人才自我评价范文
2014/09/27 职场文书
感恩教师主题班会
2015/08/12 职场文书
先进个人主要事迹怎么写
2015/11/04 职场文书
初一数学教学反思
2016/02/17 职场文书
《月球之谜》教学反思
2016/02/20 职场文书