看完这个保证你有手就行,制作各种好看的小尾巴!

全部代码如下,看注释可以轻易看懂

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
<style>
 /*div样式*/
 #main{
 width: auto;height: 1500px;margin: 0;background-color: black;
 }
</style>
</head>
<body>
 <div id="main"></div>
 <script>
 //==========鼠标星球尾巴JS代码============

 //========函数:获取当前鼠标的坐标=========
 function getMousePosition(event) {
  var x = 0;//x坐标
  var y = 0;//y坐标
  //documentElement 返回一个文档的文档元素。
  doc = document.documentElement;
  //body 返回文档的body元素
  body = document.body;
  //解决兼容性
  if (!event) event = window.event;
  //解决鼠标滚轮滚动后与相对坐标的差值
  //pageYoffset是Netscape特有
  if (window.pageYoffset) {
  x = window.pageXOffset;
  y = window.pageYOffset;
  } else {//其他浏览器鼠标滚动
  x = (doc && doc.scrollLeft || body && body.scrollLeft || 0)
   - (doc && doc.clientLeft || body && body.clientLeft || 0);
  y = (doc && doc.scrollTop || body && body.scrollTop || 0)
   - (doc && doc.clientTop || body && body.clientTop || 0);
  }
  //得到的x加上当事件被触发时鼠标指针向对于浏览器页面(或客户区)的水平坐标
  x  = event.clientX;
  //得到的x加上当事件被触发时鼠标指针向对于浏览器页面(或客户区)的垂直坐标
  y  = event.clientY;
  //返回x和y
  return {'x': x, 'y': y};
 }
 //========函数:获取当前鼠标的坐标=========

 //=====生成从minNum到maxNum的随机数=====
 function randomNum(minNum,maxNum){
 switch(arguments.length){
  case 1:
  return parseInt(Math.random()*minNum 1,10);
  case 2:
  return parseInt(Math.random()*(maxNum-minNum 1) minNum,10);
  default:
  return 0;
 }
 }
 //=====生成从minNum到maxNum的随机数======

 //======给整个文档绑定一个鼠标移动事件======
 document.onmousemove = function(event){

 // 在页面创建一个标签,(这里是创建一个自定义标签styleImg )
 var styleImg = document.createElement("div");
 //获取随机数1-5,根据随机数来设置标签的样式
 var r = randomNum(1,5);
 switch (r) {
  case 1:
  //设置图片的路径,根据不同的路径就可以更改成不同的样式
  styleImg.innerHTML="<img src='../static/muban/images/xing01.png' style='width: 50px;height: auto;'/>"
  break;
  case 2:
  styleImg.innerHTML="<img src='../static/muban/images/xing02.png' style='width: 50px;height: auto;'/>"
  break;
  case 3:
  styleImg.innerHTML="<img src='../static/muban/images/xing03.png' style='width: 50px;height: auto;'/>"
  break;
  case 4:
  styleImg.innerHTML="<img src='../static/muban/images/xing04.png' style='width: 50px;height: auto;'/>"
  break;
  case 5:
  styleImg.innerHTML="<img src='../static/muban/images/xing05.png' style='width: 50px;height: auto;'/>"
  break;
 }
 // 由于要设置动画,设置left 和top,因此,必须要设置定位
 styleImg.style.position = 'absolute'
 // 设置标签的初始位置,即鼠标的当前位置
 var x = getMousePosition(event).x;
 var y = getMousePosition(event).y;
 // 设置styleImg的坐标
 	styleImg.style.top = y  "px";
 styleImg.style.left = x   "px";
 //绑定testDiv为当前鼠标小尾巴生效的区域
 var testDiv = document.getElementById("main");
 // 将新建的标签加到页面的 body标签中
 testDiv.appendChild(styleImg);
 // 在文档中有超出的地方就会不显示,所以尽量绑定到页面的div中
 // 设置溢出隐藏,为了防止鼠标在移动的过程中会触发上下滚动条
 testDiv.style.overflow = 'hidden';
 //
 	var count = 0;
 	//setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式
 var time = setInterval(function(){
 // 设置定时器 ,让每一次生成的标签在指定的周期内修改相应的透明度
 	count  = 5;
  styleImg.style.opacity = (100-count)/100 ;
 }, 30)
 // setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。
 // 设置延时定时器, 在一定的时间后清除上面的定时器,让创建的标签不再进行变化
 setTimeout(function(){
  // 使用 clearInterval() 来停止执行setInterval函数
  clearInterval(time);
  // 删除创建的标签
  testDiv.removeChild(styleImg);
 },250)
 }
 </script>
</body>
</html>

ps:以上代码参考了多篇不同的文献后自己敲的,没有面向VC写博客哦!

最后把图片素材送给你们吧,只要在上面代码中做简单的修改,便可以实现其他样式的小尾巴


好东西记得要收藏哦!!!

到此这篇关于JS实现超级好看的鼠标小尾巴特效的文章就介绍到这了,更多相关JS实现鼠标小尾巴内容请搜索Devmax以前的文章或继续浏览下面的相关文章希望大家以后多多支持Devmax!

JS实现超级好看的鼠标小尾巴特效的更多相关文章

  1. html5 拖拽及用 js 实现拖拽功能的示例代码

    这篇文章主要介绍了html5 拖拽及用 js 实现拖拽,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  2. amaze ui 的使用详细教程

    这篇文章主要介绍了amaze ui 的使用详细教程,本文通过多种方法给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  3. swift皮筋弹动发射飞机ios源码

    这是一个款采用swift实现的皮筋弹动发射飞机游戏源码,游戏源码比较详细,大家可以研究学习一下吧。

  4. Swift与Js通过WebView交互

    开发环境:Swfit2.3XCode8.2基础概念jscontext,jscontext是代表JS的执行环境,通过-evaluateScript:方法就可以执行一JS代码JSValue,JSValue封装了JS与ObjC中的对应的类型,以及调用JS的API等JSExport,JSExport是一个协议,遵守此协议,就可以定义我们自己的协议,在协议中声明的API都会在JS中暴露出来,才能调用Swif

  5. JSCore swift

    如果双方相互引用,会造成循环引用,而导致内存泄露。以上是Jscore的基本使用,比较简单

  6. Swift WKWebView的js调用swift

    最近项目需求,需要用到JavaScriptCore和WebKit,但是网上的资源有限,而且比较杂,都是一个博客复制另外一个博客,都没有去实际敲代码验证,下面给大家分享一下我的学习过程。

  7. Swift WKWebView的swift调用js

    不多说,直接上代码:在html里面要添加的的代码,显示swift传过去的参数:这样就实现了swift给js传参数和调用!

  8. 在 Swift 專案中使用 Javascript:編寫一個將 Markdown 轉為 HTML 的編輯器

    你有強烈的好奇心,希望在你的iOS專案中使用JavaScript。jscontext中的所有值都是JSValue對象,JSValue類用於表示任意類型的JavaScript值。因此,我們既需要寫Swift代碼也要寫JavaScript代碼。此外,我們還會在JavaScript中按照這個類的定義來創建一個對象并對其屬性進行賦值。從Swift中呼叫JavaScript就如介紹中所言,JavaScriptCore中最主要的角色就是jscontext類。一個jscontext對象是位於JavaScript環境和本

  9. swift - WKWebView JS 交互

    本文介绍WKWebView怎么与js交互,至于怎么用WKWebView这里就不介绍了HTML代码APP调JS代码结果JS给APP传参数首先注册你需要监听的js方法名2.继承WKScriptMessageHandler并重写userContentController方法,在该方法里接收JS传来的参数3.结果

  10. swift 开发UIWebView跟JS的交互

    前言作为小白的我,才开始入门IOS,选择了swift来进行入门学习,学习做着公司一个简单的小小项目,该项目需要进行跟H5进行交互,然后我就开始研究了UIWebView的使用,其实基本原理跟Android的一样,因为我是Android开发的,所以就顺水推舟了。))//这里设置你需要加载的地址}overridefuncdidReceiveMemoryWarning(){super.didReceiveMemoryWarning()//disposeofanyresourcesthatcanberecreate

随机推荐

  1. js中‘!.’是什么意思

  2. Vue如何指定不编译的文件夹和favicon.ico

    这篇文章主要介绍了Vue如何指定不编译的文件夹和favicon.ico,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

  3. 基于JavaScript编写一个图片转PDF转换器

    本文为大家介绍了一个简单的 JavaScript 项目,可以将图片转换为 PDF 文件。你可以从本地选择任何一张图片,只需点击一下即可将其转换为 PDF 文件,感兴趣的可以动手尝试一下

  4. jquery点赞功能实现代码 点个赞吧!

    点赞功能很多地方都会出现,如何实现爱心点赞功能,这篇文章主要为大家详细介绍了jquery点赞功能实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  5. AngularJs上传前预览图片的实例代码

    使用AngularJs进行开发,在项目中,经常会遇到上传图片后,需在一旁预览图片内容,怎么实现这样的功能呢?今天小编给大家分享AugularJs上传前预览图片的实现代码,需要的朋友参考下吧

  6. JavaScript面向对象编程入门教程

    这篇文章主要介绍了JavaScript面向对象编程的相关概念,例如类、对象、属性、方法等面向对象的术语,并以实例讲解各种术语的使用,非常好的一篇面向对象入门教程,其它语言也可以参考哦

  7. jQuery中的通配符选择器使用总结

    通配符在控制input标签时相当好用,这里简单进行了jQuery中的通配符选择器使用总结,需要的朋友可以参考下

  8. javascript 动态调整图片尺寸实现代码

    在自己的网站上更新文章时一个比较常见的问题是:文章插图太宽,使整个网页都变形了。如果对每个插图都先进行缩放再插入的话,太麻烦了。

  9. jquery ajaxfileupload异步上传插件

    这篇文章主要为大家详细介绍了jquery ajaxfileupload异步上传插件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  10. React学习之受控组件与数据共享实例分析

    这篇文章主要介绍了React学习之受控组件与数据共享,结合实例形式分析了React受控组件与组件间数据共享相关原理与使用技巧,需要的朋友可以参考下

返回
顶部