jquery+css3实现会动的小圆圈效果


Posted in Javascript onJanuary 27, 2016

本文实例讲述了jquery+css3实现会动的小圆圈效果。分享给大家供大家参考,具体如下:

运行效果截图如下:

jquery+css3实现会动的小圆圈效果

具体代码如下:

<!DOCTYPE html>
<html lang="zh-cn">
<head>
 <meta charset="utf-8" />
 <title>那些变换颜色的小豆豆</title>
 <script type="text/javascript" src="jquery.js"></script>
 <style type="text/css">
  h1{font-size:16px;}
  .circle
  {
   position:absolute;
   width:100px;
   height:100px;
   border-radius: 50px;
   -webkit-border-radius:50px;
   -moz-border-radius:50px;
   -o-border-radius:50px;
   -ms-border-radius:50px;
   border:1px solid #ddd;
   background-color:#eee;
   text-align:center;
   -moz-transition:background-color .5s ease-in;
   -webkit-transition:background-color .5s ease-in;
   -o-transition:background-color .5s ease-in;
   -ms-transition:background-color .5s ease-in;
   transition:background-color .5s ease-in;
  }
 </style>
 <script type="text/javascript" > 
  var colorArray = "ABCDEFabcdef1234567890".split('');
  function createCircle(position, size){
   var html = [];
   var radius = size.height > size.width ? size.height/2 : size.width / 2;
   var opacity = Math.random();
   opacity = opacity < 0.3 ? opacity = 0.3 : opacity;
   html.push('<div class="circle" style="left:'+position.left+'px; top:'+position.top+'px;');
   html.push('width:'+size.width+'px; height:'+size.height+'px; ');
   html.push('border-radius:'+radius+'px;');
   html.push('-webkit-border-radius:'+radius+'px;');
   html.push('-moz-border-radius:'+radius+'px;');
   html.push('-o-border-radius:'+radius+'px;');
   html.push('-ms-border-radius:'+radius+'px;');
   html.push('opacity:'+opacity+';');
   html.push('filter:alpha(opacity='+Math.round(opacity*100)+')');
   html.push('" ></div>');
   return html.join('');
  }
  function createColor(){
   var color = "";
   for(var i=0; i<6; i++) {
    color += colorArray[Math.ceil(Math.random()*21)];
   }
   return "#"+color;
  }
  function animate(obj){
   setInterval(function(){
    var position = obj.position();
    var left = parseInt(position.left);
    var top = parseInt(position.top);
    obj.css('background-color', createColor());
    obj.animate({'left': left + 5}, 250);
    obj.animate({'left': left - 5, 'top': top + 5}, 250);
    obj.animate({'top': top}, 250);
    obj.animate({'left': left, 'top': top}, 250);
   }, 1000);
  }
  $(document).ready(function(){
   var wrapper = $("#wrapper");
   var height = parseInt(document.documentElement.clientHeight || 500);
   var width = parseInt(wrapper.width());
   for(var i=0; i<200; i++) {
    var position = {
     left: Math.round(Math.random()*(width - 50)),
     top: Math.round(Math.random()*(height - 100))
    };
    var _size = 50 - Math.round(Math.random()*40);
    var size = {
     height: _size,
     width: _size
    };
    var circle = $(createCircle(position, size));
    circle.appendTo(wrapper);
    circle.mouseover(function(){
     var color = createColor();
     $(this).css('background-color', color);
    }).mouseout(function(){
     var color = createColor();
     $(this).css('background-color', color);
    });
    animate(circle);
   }
  });
 </script>
</head>
<body id="wrapper">
 <div id="wrapper">
 </div>
</body>
</html>

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

Javascript 相关文章推荐
根据分辩率调用不同的CSS.
Jan 08 Javascript
JS实现图片预加载无需等待
Dec 21 Javascript
js将iframe中控件的值传到主页面控件中的实现方法
Mar 11 Javascript
JavaScript的arguments对象应用示例
Sep 15 Javascript
网页中表单按回车就自动提交的问题的解决方案
Nov 03 Javascript
javascript结合CSS实现苹果开关按钮特效
Apr 07 Javascript
javascript操作ul中li的方法
May 14 Javascript
Bootstrap滚动监听(Scrollspy)插件详解
Apr 26 Javascript
js实现一键复制功能
Mar 16 Javascript
通过cordova将vue项目打包为webapp的方法
Feb 02 Javascript
layer 刷新某个页面的实现方法
Sep 05 Javascript
Vue检测屏幕变化来改变不同的charts样式实例
Oct 26 Javascript
再谈JavaScript异步编程
Jan 27 #Javascript
简单介绍jsonp 使用小结
Jan 27 #Javascript
理解javascript异步编程
Jan 27 #Javascript
js实现的鼠标滚轮滚动切换页面效果(类似360默认页面滚动切换效果)
Jan 27 #Javascript
AngularJS转换响应内容
Jan 27 #Javascript
jQuery+css实现的切换图片功能代码
Jan 27 #Javascript
javascript中的3种继承实现方法
Jan 27 #Javascript
You might like
2020年4月新番动漫目录 官方宣布4月播出的作品一览
2020/03/08 日漫
php下用GD生成生成缩略图的两个选择和区别
2007/04/17 PHP
php中var_export与var_dump的区别分析
2010/08/21 PHP
PHP函数strip_tags的一个bug浅析
2014/05/22 PHP
php中smarty区域循环的方法
2015/06/11 PHP
3种方法轻松处理php开发中emoji表情的问题
2016/07/18 PHP
Laravel中的chunk组块结果集处理与注意问题
2018/08/15 PHP
php生成微信红包数组的方法
2019/09/05 PHP
php操作redis数据库常见方法实例总结
2020/02/20 PHP
JavaScript高级程序设计 读书笔记之九 本地对象Array
2012/02/27 Javascript
JavaScript函数作用域链分析
2015/02/13 Javascript
微信WeixinJSBridge API使用实例
2015/05/25 Javascript
详解JavaScript中数组的相关知识
2015/07/29 Javascript
jQuery基于ajax实现带动画效果无刷新柱状图投票代码
2015/08/10 Javascript
使用JQuery在线制作ppt并在线演示源码特效
2015/09/08 Javascript
快速掌握Node.js环境的安装与运行方法
2016/02/16 Javascript
vue 2.x 中axios 封装的get 和post方法
2018/02/28 Javascript
react native 获取地理位置的方法示例
2018/08/28 Javascript
Vue循环组件加validate多表单验证的实例
2018/09/18 Javascript
vue强制刷新组件的方法示例
2019/02/28 Javascript
JQuery实现简单的复选框树形结构图示例【附源码下载】
2019/07/16 jQuery
基于Vue+ElementUI的省市区地址选择通用组件
2019/11/20 Javascript
[46:10]2014 DOTA2国际邀请赛中国区预选赛 CnB VS HGT
2014/05/21 DOTA
python中使用%与.format格式化文本方法解析
2017/12/27 Python
Python使用itchat模块实现简单的微信控制电脑功能示例
2019/08/26 Python
Python对Tornado请求与响应的数据处理
2020/02/12 Python
利用CSS3实现文本框的清除按钮相关的一些效果
2015/06/23 HTML / CSS
Html5自定义字体解决方法
2019/10/09 HTML / CSS
个人简历的自荐信
2013/10/23 职场文书
教师的实习自我鉴定
2013/12/17 职场文书
大学生学期个人总结
2015/02/12 职场文书
2015小学教师年度考核工作总结
2015/05/12 职场文书
2015年三年级班主任工作总结
2015/05/21 职场文书
2016年教育局“我们的节日——端午节”主题活动总结
2016/04/01 职场文书
何时使用Map来代替普通的JS对象
2021/04/29 Javascript
让JavaScript代码更加精简的方法技巧
2022/06/01 Javascript