当前位置:首页 > 日记 > 正文

js实现鼠标跟随运动效果

js实现鼠标跟随运动效果

鼠标跟随运动效果展示

1、使用命令创建基本结构ul.cursorPlay#cursorPlay>li*12>a>img+div>span

2、给span标签添加字段

3、设置基本的样式

1、cursorPlay的宽度 992px,高度600px
2、cursorPlay li背景为白色,内边距为8px,外边距5px,显示浮动为左浮动
3、cursorPlay li a,cursorPlay li a img显示为块状并且为相对布局
4、cursorPlay li a添加overflow:hidden
5、cursorPlay li a div为绝对布局,宽度和高度均为100%,设置背景颜色为rgba

4、js添加动态效果(方向0,1,2,3分别为上,右,下,左)

1)、给绑定鼠标进入或者出去的事件

$("#cursorPlay li").on("mouseenter mouseleave",function(event){var evType = event.type;var direction = getDir($(this), {x: event.pageX,y: event.pageY});//  console.log("evtype:"+evType+",dir:"+direction);moveTo($(this),direction, evType);});2、

2)、使用getDir获取鼠标移动的方向,coordinates坐标

计算鼠标划入画出方向函数(搜索关键词“jquery计算鼠标划入划出方向”)

direction = Math.round((((Math.atan2(y, x) * (180 / Math.PI)) + 180) / 90) + 3) % 4;function getDir($el, coordinates){var w = $el.width(),h = $el.height(),x = (coordinates.x - $el.offset().left - (w / 2)) * (w > h ? (h / w) : 1),y = (coordinates.y - $el.offset().top - (h / 2)) * (h > w ? (w / h) : 1),direction = Math.round((((Math.atan2(y, x) * (180 / Math.PI)) + 180) / 90) + 3) % 4;return direction;}

3)、添加移动函数moveTo,三个参数分别为选择器,方向,鼠标划入画出类型,通过判断鼠标划入类型,来自定义选择器初始位置,然后重定义css样式,当鼠标划出时再重定义每个方向上的位置

function moveTo($el, direction, type){  var $layer = $el.find("div");  var coord = {};  if(type === "mouseenter"){    switch(direction){     case 0 :   $layer.css("top","-100%").css("left","0px");break;    case 1 : $layer.css("left","100%").css("top","0px");break;    case 2 : $layer.css("top","100%").css("left","0px");break;    case 3 : $layer.css("left","-100%").css("top","0px");break;  }    coord = {left:0,top:0}  }else{  switch(direction){    case 0 : coord = {left:0,top:'-100%'};break;    case 1 : coord = {left:'100%',top:0};break;    case 2 : coord = {left:0,top:'100%'};break;    case 3 : coord = {left:'-100%',top:0};break;  }}$layer.animate(coord,300);} 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

相关文章

JavaScript数据结构之二叉树的计数

JavaScript数据结构之二叉树的计数

叉树,算法示例,数据结构,之二,电脑软件,本文实例讲述了JavaScript数据结构之二叉树的计数算法。分享给大家供大家参考,具体如下:二叉查找树的一个用途就是记录一组数据集中数据出现的次数。比如记录成绩的分布,给定一组考试成绩,如果未出现则加…

在Excel2003表格中怎么拆分单元格

在Excel2003表格中怎么拆分单元格

拆分,单元格,表格,攻略,电脑软件,  在Excel2003中,拆分单元格与合并单元格是一对双胞胎,只有合并了单元格之后才会出现拆分单元格,因为拆分单元格这种功能并不能在单一的单元格之上使用。以下是小编为您带来的关于Excel2003拆分单元格攻略,希…

excel2007中如何设置x轴和y轴

excel2007中如何设置x轴和y轴

方法,设置,如何设置,电脑软件,xy,  在Excel中制作折线图是最基本的技巧,而设置X、Y轴就不是那么容易了,对于新手来说可能XY到底是什么也不知道,下面是小编带来的关于如何用excel设置xy轴的方法,欢迎大家来到学习。excel2007设置xy轴的方法设…

PPT2010如何设置动画效果的替换且

PPT2010如何设置动画效果的替换且

动画,动画效果,替换,设置,如何设置,  在PPT2010中有更简单快捷的方法不必让你重新制作,只需换个图片,之前的呕心沥血之作依然可以保存下来。以下是小编为您带来的关于PPT2010已设置动画效果的图片替换且保留之前的动画,希望对您有所帮助。PP…

怎么设置ppt2010单击鼠标换页

怎么设置ppt2010单击鼠标换页

鼠标,单击,换页,设置,快捷键,  我们在制作演示文稿的时候,如何才能设置为,让幻灯片在播放的时候,通过按键盘的键或点击鼠标,不会自动翻页播放。下面小编就告诉大家吧。ppt2010单击鼠标换页教程一步:执行菜单操作“幻灯片放映”&rarr…

Excel中进行排序指定三个以上关键

Excel中进行排序指定三个以上关键

排序,关键字,操作方法,操作步骤,电脑软件,  我们都知道,excel排序只能同时给三个关键字排序,如何给更多的关键字排序呢?就是这样简单容易的方法很多人都忽略掉了。今天,小编就教大家在Excel中进行排序指定三个以上关键字的操作方法。希望对…

浅谈js中同名函数和同名变量的执行

浅谈js中同名函数和同名变量的执行

变量,执行,函数,浅谈,电脑软件,经测试未写成闭包形式的在同一个文件中或者不同的 js 文件中定义的同名函数,调用时会执行后面一个定义的函数。即使这样写也会执行后面一个即会弹出2:<script type="text/javascript"> function t(){ alert…

Excel2003怎么制作数据分析直方图

Excel2003怎么制作数据分析直方图

直方图,数据分析,方法,电脑软件,  用Excel 2003做数据分析直方图的人应该比较少吧,但是也一点也不影响数据分析直方图的作用和excel2003的地位,那么下面小编就教你怎么在excel2003中制作数据分析直方图,希望对你有帮助!Excel2003制作数据分析…

qq伤感个性签名想哭精选QQ伤感个性

qq伤感个性签名想哭精选QQ伤感个性

个性签名,伤感,想哭,电脑软件,qq,  偶然自己单独一个人时,就会想一些,以前有的,现在没的。现在小编为你分享了qq伤感个性签名想哭,希望能够帮到你。qq伤感个性签名想哭1) 没用的东西,再便宜也不要买,不爱的人,再寂寞也不要依赖。2) 我想每个人的…

jQuery中的on与bind绑定事件区别实

jQuery中的on与bind绑定事件区别实

绑定事件,详解,实例,区别,电脑软件,on(events,[selector],[data],fn)events:一个或多个用空格分隔的事件类型和可选的命名空间,如”click”或”keydown.myPlugin” 。 selector:一个选择器字符串用于过滤器的触发事件的选择器元素的后代. …

excel2010单独窗口显示的方法步骤

excel2010单独窗口显示的方法步骤

显示,步骤,方法,设置,窗口,  想要在单独的窗口打开excel2010,要做怎么做呢?不太清楚的朋友可以看看以下关于excel2010单独窗口显示的教程,希望对你有帮助!excel2010 单独窗口显示设置步骤方法一:Fixit 自动修改  单击&ldquo;解决此问题&rdqu…

在PPT中如何绘制纸飞机

在PPT中如何绘制纸飞机

绘制,纸飞机,电脑软件,PPT,  还记得儿时的纸飞机吗?有没有想过在自己做的PPT上面也绘制一个呢?有创意,又好玩。以下是小编为您带来的关于PPT绘制纸飞机,希望对您有所帮助。PPT绘制纸飞机1、在&ldquo;插入&rdquo;选项卡的&ldquo;插入&rdquo;…