原生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 相关文章推荐
Autocomplete Textbox Example javascript实现自动完成成功
Aug 17 Javascript
javascript web页面刷新的方法收集
Jul 02 Javascript
jQuery遍历Form示例代码
Sep 03 Javascript
javascript中加号(+)操作符的一些神奇作用
Jun 06 Javascript
Javascript节点关系实例分析
May 15 Javascript
Bootstrap入门书籍之(零)Bootstrap简介
Feb 17 Javascript
jQuery实现标签页效果实战(4)
Feb 08 Javascript
js canvas实现适用于移动端的百分比仪表盘dashboard
Jul 18 Javascript
微信小程序实现跟随菜单效果和循环嵌套加载数据
Nov 21 Javascript
Angular实现较为复杂的表格过滤,删除功能示例
Dec 23 Javascript
微信小程序用户信息encryptedData详解
Aug 24 Javascript
js实现随机数小游戏
Jun 28 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
dede3.1分页文字采集过滤规则详说(图文教程)
2007/04/03 PHP
php 将bmp图片转为jpg等其他任意格式的图片
2009/06/21 PHP
zend framework中使用memcache的方法
2016/03/04 PHP
PHP实现统计所有字符在字符串中出现次数的方法
2017/10/17 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
一段利用WSH修改和查看IP配置的代码
2008/05/11 Javascript
JavaScript入门教程(5) js Screen屏幕对象
2009/01/31 Javascript
checkbox 复选框不能为空
2009/07/11 Javascript
JavaScript 高效运行代码分析
2010/03/18 Javascript
javascript错误的认识不用关心内存管理
2012/12/15 Javascript
jQuery实现表头固定效果的实例代码
2013/05/24 Javascript
node.js中的http.createServer方法使用说明
2014/12/14 Javascript
Javascript中的call()方法介绍
2015/03/15 Javascript
js中flexible.js实现淘宝弹性布局方案
2020/06/23 Javascript
JS原型链 详解及示例代码
2016/09/06 Javascript
Vue数据驱动模拟实现2
2017/01/11 Javascript
js+html5生成自动排列对话框实例
2017/10/09 Javascript
js+html5实现手机九宫格密码解锁功能
2018/07/30 Javascript
VUE单页面切换动画代码(全网最好的切换效果)
2019/10/31 Javascript
[06:59]DOTA2-DPC中国联赛3月7日Recap集锦
2021/03/11 DOTA
仅用50行代码实现一个Python编写的计算器的教程
2015/04/17 Python
Python修改MP3文件的方法
2015/06/15 Python
Python外星人入侵游戏编程完整版
2020/03/30 Python
对pycharm代码整体左移和右移缩进快捷键的介绍
2018/07/16 Python
Python3爬虫爬取百姓网列表并保存为json功能示例【基于request、lxml和json模块】
2018/12/05 Python
python 通过手机号识别出对应的微信性别(实例代码)
2019/12/22 Python
TensorFlow MNIST手写数据集的实现方法
2020/02/05 Python
迪奥美国官网:Dior美国
2019/12/07 全球购物
公司企业表扬信
2014/01/11 职场文书
生产部岗位职责范文
2014/02/07 职场文书
抵押贷款承诺书
2014/05/30 职场文书
运动会广播稿150字(9篇)
2014/09/20 职场文书
公务员考察材料
2014/12/23 职场文书
2015年党建工作目标责任书
2015/05/08 职场文书
【海涛解说】暗牧也疯狂,牛蛙成配角
2022/04/01 DOTA
vue中div禁止点击事件的实现
2022/04/02 Vue.js