jQuery实现炫酷的鼠标轨迹特效


Posted in Javascript onFebruary 01, 2015

代码:

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>jQuery实现炫酷的鼠标轨迹特效</title><base target="_blank" />

<script type="text/javascript"> window.onload = function () {

C = Math.cos; S = Math.sin; U = 0; w = window; j = document; d = j.getElementById("kele"+"yi_com"); c = d.getContext("2d"); W = d.width = w.innerWidth; H = d.height = w.innerHeight; c.fillRect(0, 0, W, H); c.globalCompositeOperation = "lighter"; c.lineWidth = 0.2; c.lineCap = "round"; var bool = 0, t = 0; d.onmousemove = function (e) {

if (window.T) {

if (D == 9) { D = Math.random() * 15; f(1); }

clearTimeout(T);

}

X = e.pageX; Y = e.pageY; a = 0; b = 0; A = X, B = Y; R = (e.pageX / W * 999 >> 0) / 999; r = (e.pageY / H * 999 >> 0) / 999; U = e.pageX / H * 360 >> 0; D = 9; g = 360 * Math.PI / 180; T = setInterval(f = function (e) {

c.save(); c.globalCompositeOperation = "source-over"; if (e != 1) { c.fillStyle = "rgba(0,0,0,0.02)"; c.fillRect(0, 0, W, H); }

c.restore(); i = 25; while (i--) {

c.beginPath(); if (D > 450 || bool) {

if (!bool) { bool = 1; }

if (D < 0.1) { bool = 0; }

t -= g; D -= 0.1;

}

if (!bool) { t += g; D += 0.1; }

q = (R / r - 1) * t; x = (R - r) * C(t) + D * C(q) + (A + (X - A) * (i / 25)) + (r - R); y = (R - r) * S(t) - D * S(q) + (B + (Y - B) * (i / 25)); if (a) { c.moveTo(a, b); c.lineTo(x, y) }

c.strokeStyle = "hsla(" + (U % 360) + ",100%,50%,0.75)"; c.stroke(); a = x; b = y;

}

U -= 0.5; A = X; B = Y;

}, 16);

}

j.onkeydown = function (e) { a = b = 0; R += 0.05 }

d.onmousemove({ pageX: 300, pageY: 290 })

}</script>

<style>body{margin:0;overflow:hidden}div{padding:1px 5px;background:#333;position:absolute;z-index:2;color:#555;font-family:arial}a{color:#ccf}a:hover{color:red}</style>

</head>

<body>

<div id="text"></div>

<canvas id="keleyi_com"></canvas>

</body>

</html>

以上就是本文的内容了,希望小伙伴们喜欢此特效,快过年了,给自己的个人主页增添些色彩吧。

Javascript 相关文章推荐
jquery延迟加载外部js实现代码
Jan 11 Javascript
js实现连个数字相加而不是拼接的方法
Feb 23 Javascript
jQuery中slidedown与slideup方法用法示例
Sep 16 Javascript
Bootstrap table简单使用总结
Feb 15 Javascript
Javascript中将变量转换为字符串的三种方法
Sep 19 Javascript
JavaScript框架Angular和React深度对比
Nov 20 Javascript
vue项目中,main.js,App.vue,index.html的调用方法
Sep 20 Javascript
基于node.js实现爬虫的讲解
Feb 18 Javascript
vue表单验证你真的会了吗?vue表单验证(form)validate
Apr 07 Javascript
微信小程序Flex布局用法深入浅出分析
Apr 25 Javascript
layui自定义ajax左侧三级菜单
Jul 26 Javascript
vue路由传参三种基本方式详解
Dec 09 Javascript
jQuery+CSS3实现树叶飘落特效
Feb 01 #Javascript
jquery实现勾选复选框触发事件给input赋值
Feb 01 #Javascript
jQuery结合HTML5制作的爱心树表白动画
Feb 01 #Javascript
jquery实现炫酷的叠加层自动切换特效
Feb 01 #Javascript
JavaScript插件化开发教程(六)
Feb 01 #Javascript
JavaScript插件化开发教程(五)
Feb 01 #Javascript
对JavaScript中this指针的新理解分享
Jan 31 #Javascript
You might like
如何用C语言编写PHP扩展的详解
2013/06/13 PHP
2个比较经典的PHP加密解密函数分享
2014/07/01 PHP
PHP将数据导出Excel表中的实例(投机型)
2017/07/31 PHP
javascript 点击整页变灰的效果(可做退出效果)。
2008/01/09 Javascript
Javascript与flash交互通信基础教程
2008/08/07 Javascript
Javascript Global对象
2009/08/13 Javascript
JavaScript高级程序设计 学习笔记 js高级技巧
2011/09/20 Javascript
Java 正则表达式学习总结和一些小例子
2012/09/13 Javascript
jquery 按钮状态效果 正常、移上、按下
2013/08/12 Javascript
jquery中的$(document).ready()使用小结
2014/02/14 Javascript
easyui datagrid 键盘上下控制选中行示例
2014/03/31 Javascript
node.js中的fs.unlink方法使用说明
2014/12/15 Javascript
node.js中的require使用详解
2014/12/15 Javascript
使用node.js中的Buffer类处理二进制数据的方法
2016/11/26 Javascript
正则验证小数点后面只能有两位数的方法
2017/02/28 Javascript
Bootstrap Tree View简单而优雅的树结构组件实例解析
2017/06/15 Javascript
使用Node.js搭建静态资源服务详细教程
2017/08/02 Javascript
随机生成10个不重复的0-100的数字(实例讲解)
2017/08/16 Javascript
关于vue v-for 循环问题(一行显示四个,每一行的最右边那个计算属性)
2018/09/04 Javascript
vue实现固定位置显示功能
2019/05/30 Javascript
javascript面向对象创建对象的方式小结
2019/07/29 Javascript
layer.alert回调函数执行关闭弹窗的实例
2019/09/11 Javascript
react结合bootstrap实现评论功能
2020/05/30 Javascript
[56:38]DOTA2-DPC中国联赛正赛Aster vs Magma BO3 第一场 3月5日
2021/03/11 DOTA
Python采用raw_input读取输入值的方法
2014/08/18 Python
Python使用struct处理二进制的实例详解
2017/09/11 Python
用Python PIL实现几个简单的图片特效
2019/01/18 Python
pyqt5 tablewidget 利用线程动态刷新数据的方法
2019/06/17 Python
Python常用库大全及简要说明
2020/01/17 Python
Python的赋值、深拷贝与浅拷贝的区别详解
2020/02/12 Python
PyCharm 2020 激活到 2100 年的教程
2020/03/25 Python
基于Python正确读取资源文件
2020/09/14 Python
HTML5 b和i标记将被赋予真正的语义
2009/07/16 HTML / CSS
Lookfantastic瑞典:英国知名美妆购物网站
2018/04/06 全球购物
商务专员岗位职责
2013/11/23 职场文书
vue项目两种方式实现竖向表格的思路分析
2021/04/28 Vue.js