原生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 相关文章推荐
javascript 写类方式之四
Jul 05 Javascript
jquery动态添加删除一行数据示例
Jun 12 Javascript
jquery实现全选、反选、获得所有选中的checkbox
Sep 13 Javascript
Jquery获取第一个子元素简单实例
Jun 02 Javascript
JavaScript实现的select点菜功能示例
Jan 16 Javascript
js学习总结之DOM2兼容处理this问题的解决方法
Jul 27 Javascript
解决vue中使用swiper插件问题及swiper在vue中的用法
Apr 04 Javascript
layui点击导航栏刷新tab页的示例代码
Aug 14 Javascript
vue-router懒加载速度缓慢问题及解决方法
Nov 25 Javascript
React 使用recharts实现散点地图的示例代码
Dec 07 Javascript
vue + any-touch实现一个iscroll 实现拖拽和滑动动画效果
Apr 08 Javascript
基于Vue SEO的四种方案(小结)
Jul 01 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 Image Resize图片大小调整的函数代码
2011/01/17 PHP
PHP在字符断点处截断文字的实现代码
2011/04/21 PHP
分享PHP header函数使用教程
2013/09/05 PHP
8个PHP程序员常用的功能汇总
2014/12/18 PHP
php+mysqli使用预处理技术进行数据库查询的方法
2015/01/28 PHP
php 微信公众平台开发模式实现多客服的实例代码
2016/11/07 PHP
PHP生成唯一ID之SnowFlake算法
2016/12/17 PHP
PHP PDOStatement::fetchAll讲解
2019/01/31 PHP
Laravel 框架基于自带的用户系统实现登录注册及错误处理功能分析
2020/04/14 PHP
判断页面是关闭还是刷新的js代码
2007/01/28 Javascript
JQuery 将元素显示在屏幕的中央的代码
2010/02/27 Javascript
读jQuery之十 事件模块概述
2011/06/27 Javascript
js判断登录与否并确定跳转页面的方法
2015/01/30 Javascript
纯javascript移动优先的幻灯片效果
2015/11/02 Javascript
Move.js入门
2017/02/08 Javascript
jquery+ajaxform+springboot控件实现数据更新功能
2018/01/22 jQuery
Vue 使用计时器实现跑马灯效果的实例代码
2019/07/11 Javascript
layui上传图片到服务器的非项目目录下的方法
2019/09/26 Javascript
微信小程序实用代码段(收藏版)
2019/12/17 Javascript
[03:24]2014DOTA2国际邀请赛 神秘商店生意火爆
2014/07/18 DOTA
Python中MYSQLdb出现乱码的解决方法
2014/10/11 Python
Django学习笔记之ORM基础教程
2018/03/27 Python
python实现将汉字保存成文本的方法
2018/11/16 Python
Python3.5 Pandas模块之DataFrame用法实例分析
2019/04/23 Python
python脚本实现音频m4a格式转成MP3格式的实例代码
2019/10/09 Python
Python读取JSON数据操作实例解析
2020/05/18 Python
Node.js 和 Python之间该选择哪个?
2020/08/05 Python
CSS3 box-sizing属性
2009/04/17 HTML / CSS
澳大利亚个性化儿童礼品网站:Bright Star Kids
2019/06/14 全球购物
英国水族馆和池塘用品购物网站:Warehouse Aquatics
2019/08/29 全球购物
九州传奇上机题
2014/07/10 面试题
博士研究生自我鉴定范文
2013/12/04 职场文书
质监局领导班子践行群众路线整改方案
2014/10/26 职场文书
单位计划生育责任书
2015/05/09 职场文书
深度学习小工程练习之垃圾分类详解
2021/04/14 Python
使用Pytorch训练two-head网络的操作
2021/05/28 Python