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 相关文章推荐
Display SQL Server Login Mode
Jun 21 Javascript
jQuery学习笔记(1)--用jQuery实现异步通信(用json传值)具体思路
Apr 08 Javascript
js判断url是否有效的两种方法
Mar 04 Javascript
JavaScript的Number对象的toString()方法
Dec 18 Javascript
JavaScript中通过提示框跳转页面的方法
Feb 14 Javascript
jQuery Mobile中的button按钮组件基础使用教程
May 23 Javascript
jQuery实现背景弹性滚动的导航效果
Jun 01 Javascript
JavaScript使用delete删除数组元素用法示例【数组长度不变】
Jan 17 Javascript
微信小程序实现自上而下字幕滚动
Jul 14 Javascript
微信小程序内拖动图片实现移动、放大、旋转的方法
Sep 04 Javascript
js实现适配移动端的拖动效果
Jan 13 Javascript
Vue如何实现监听组件原生事件
Jul 03 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
基于mysql的bbs设计(四)
2006/10/09 PHP
使用php来实现网络服务
2009/09/15 PHP
dvwa+xampp搭建显示乱码的问题及解决方案
2015/08/23 PHP
php实现有序数组旋转后寻找最小值方法
2018/09/27 PHP
Jquery 数据选择插件Pickerbox使用介绍
2012/08/24 Javascript
基于JavaScript实现继承机制之原型链(prototype chaining)的详解
2013/05/07 Javascript
jQuery设置div一直在页面顶部显示的方法
2013/10/24 Javascript
jquery限定文本框只能输入数字即整数和小数
2013/11/29 Javascript
jquery基础教程之数组使用详解
2014/03/10 Javascript
jQuery队列操作方法实例
2014/06/11 Javascript
Angular.js组件之input mask对input输入进行格式化详解
2017/07/10 Javascript
react-native组件中NavigatorIOS和ListView结合使用的方法
2017/09/30 Javascript
vue移动端监听滚动条高度的实现方法
2018/09/03 Javascript
图文讲解vue的v-if使用方法
2019/02/11 Javascript
javascript验证form表单数据的案例详解
2019/03/25 Javascript
vue canvas绘制矩形并解决由clearRec带来的闪屏问题
2019/09/02 Javascript
从0到1学习JavaScript编写贪吃蛇游戏
2020/07/28 Javascript
[02:29]大剑、皮鞭、女装,这届DOTA2勇士令状里都有
2020/07/17 DOTA
web.py获取上传文件名的正确方法
2014/08/26 Python
Python自定义简单图轴简单实例
2018/01/08 Python
Python实现的三层BP神经网络算法示例
2018/02/07 Python
Python中str.join()简单用法示例
2018/03/20 Python
python 反向输出字符串的方法
2018/07/16 Python
如何使用Python实现斐波那契数列
2019/07/02 Python
Python中模块(Module)和包(Package)的区别详解
2019/08/07 Python
PyTorch实现ResNet50、ResNet101和ResNet152示例
2020/01/14 Python
python 通过邮件控制实现远程控制电脑操作
2020/03/16 Python
解决django框架model中外键不落实到数据库问题
2020/05/20 Python
为中国消费者甄选天下优品:网易严选
2016/08/11 全球购物
mysql有关权限的表都有哪几个
2015/04/22 面试题
JAVA程序员自荐书
2014/01/30 职场文书
理工大学毕业生自荐信范文
2014/02/22 职场文书
毕业生求职信
2014/06/10 职场文书
启动仪式策划方案
2014/06/14 职场文书
小学趣味运动会加油稿
2014/09/25 职场文书
nginx如何将http访问的网站改成https访问
2021/03/31 Servers