原生JS实现的多个彩色小球跟随鼠标移动动画效果示例


Posted in Javascript onFebruary 01, 2018

本文实例讲述了原生JS实现的多个彩色小球跟随鼠标移动动画效果。分享给大家供大家参考,具体如下:

实现方法:

每个小球移动都有自己的坐标,小球移动的同时,需要进行坐标传递,将第一个坐标依次传递给最后一个坐标,来实现小球跟着移动的效果

实现代码:

<!DOCTYPE html>
<html>
 <head>
  <meta charset="UTF-8">
  <title>小球运动</title>
  <style type="text/css">
   p {
    border-radius: 50%;
    width: 30px;
    height: 30px;
    position: absolute;
    text-align: center;
    line-height: 30px;
    color: white;
   }
  </style>
 </head>
 <body>
 </body>
 <script type="text/javascript">
  //创建数组存储所有的小球
  var balls = [];
  //创建小球函数
  function createballs(){
   for (var i = 0;i < 60;i++) {
    var ball = document.createElement("p");
     ball.innerHTML = i + 1;
     ball.style.backgroundColor = randomColor();
    //将创建的小球存储到数组中
    document.body.appendChild( ball);
    //将所有的小球存在数组中
     balls.push( ball);
   }
  }
  createballs();
  //随机函数
  function randomNum(m, n) {
   return Math.floor(Math.random() * (n - m + 1) + m);
  }
  //随机颜色
  function randomColor() {
   return "rgb(" + randomNum(0, 255) + "," + randomNum(0, 255) + "," + randomNum(0, 255) + ")";
  }
  document.onmousemove = function(e){
   var eventObj = e || event;
   for(var i = balls.length - 1;i > 0;i--){
    //将小球的下标通过for循环进行传递
     balls[i].style.left = balls[i - 1].style.left;
     balls[i].style.top= balls[i - 1].style.top;
   }
   //将第一个小球赋值为最新的事件对象中的坐标
    balls[0].style.left = eventObj.clientX + "px";
    balls[0].style.top= eventObj.clientY + "px";
  }
 </script>
</html>

运行效果:

原生JS实现的多个彩色小球跟随鼠标移动动画效果示例

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

Javascript 相关文章推荐
Jquery CheckBox全选方法代码附js checkbox全选反选代码
Jun 09 Javascript
JQuery动态创建DOM、表单元素的实现代码
Aug 09 Javascript
js中判断数字\字母\中文的正则表达式 (实例)
Jun 29 Javascript
如何在指定的地方插入html内容和文本内容
Dec 23 Javascript
深入理解javascript中return的作用
Dec 30 Javascript
Node.js实现在目录中查找某个字符串及所在文件
Sep 03 Javascript
javascript表格的渲染组件
Jul 03 Javascript
JavaScript中removeChild 方法开发示例代码
Aug 15 Javascript
JS验证 只能输入小数点,数字,负数的实现方法
Oct 07 Javascript
jQuery+PHP+Mysql实现抽奖程序
Apr 12 jQuery
JavaScript中正则表达式使数字、中文或指定字符高亮显示
Oct 31 Javascript
用vscode开发vue应用的方法步骤
May 06 Javascript
Vue组件之自定义事件的功能图解
Feb 01 #Javascript
微信小程序三级联动选择器使用方法
May 19 #Javascript
jquery应用实例分享_实现手风琴特效
Feb 01 #jQuery
使用JS模拟锚点跳转的实例
Feb 01 #Javascript
微信小程序实现图片预览功能
Jan 31 #Javascript
vue单页应用加百度统计代码(亲测有效)
Jan 31 #Javascript
微信小程序实现MUI数字输入框效果
Jan 31 #Javascript
You might like
PHP 数组实例说明
2008/08/18 PHP
php adodb分页实现代码
2009/03/19 PHP
用PHP来计算某个目录大小的方法
2014/04/01 PHP
PHP使用feof()函数读文件的方法
2014/11/07 PHP
php从完整文件路径中分离文件目录和文件名的方法
2015/03/13 PHP
PHP邮件群发机实现代码
2016/02/16 PHP
解析WordPress中控制用户登陆和判断用户登陆的PHP函数
2016/03/01 PHP
创建无限极分类树型结构的简单方法
2017/06/20 PHP
PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解
2019/06/03 PHP
JavaScript 反科里化 this [译]
2012/09/20 Javascript
当自定义数据属性为json格式字符串时jQuery的data api问题探讨
2013/02/18 Javascript
FF(火狐)浏览器无法执行window.close()解决方案
2014/11/13 Javascript
jquery增加和删除元素的方法
2015/01/14 Javascript
JavaScript中的substr()方法使用详解
2015/06/06 Javascript
同步文本框内容JS代码实现
2016/08/04 Javascript
jQuery轮播图效果精简版完整示例
2016/09/04 Javascript
Bootstrap基本布局实现方法详解
2016/11/25 Javascript
Bootstrap基本插件学习笔记之Popover提示框(19)
2016/12/08 Javascript
详解AngularJS通过ocLazyLoad实现动态(懒)加载模块和依赖
2017/03/01 Javascript
React.js中常用的ES6写法总结(推荐)
2017/05/09 Javascript
vue.js $refs和$emit 父子组件交互的方法
2017/12/20 Javascript
angularJS实现动态添加,删除div方法
2018/02/27 Javascript
你不知道的Vue技巧之--开发一个可以通过方法调用的组件(推荐)
2019/04/15 Javascript
原生JavaScript实现随机点名表
2021/01/14 Javascript
Python用61行代码实现图片像素化的示例代码
2018/12/10 Python
Python Cookie 读取和保存方法
2018/12/28 Python
Laravel+Dingo/Api 自定义响应的实现
2019/02/17 Python
pytorch cuda上tensor的定义 以及减少cpu的操作详解
2020/06/23 Python
基于Python爬取股票数据过程详解
2020/10/21 Python
Yankee Candle官网:美国最畅销蜡烛品牌之一
2020/01/05 全球购物
主持词开场白
2014/03/17 职场文书
党员四风剖析材料
2014/08/27 职场文书
2014审计局领导班子民主生活会对照检查材料思想汇报
2014/09/20 职场文书
2019新员工试用期转正工作总结范文
2019/08/21 职场文书
Python利用Turtle绘制哆啦A梦和小猪佩奇
2022/04/04 Python
SQL解决未能删除约束问题drop constraint
2022/05/30 SQL Server