css3 眼珠旋转动画,CSS3小猫咪眼睛随鼠标移动动画特效

js代码

//获取cat所在div的位置

var catx=document.getElementsByClassName("cat")[0].offsetLeft;

var pL=document.getElementById("pL");

var pR=document.getElementById("pR");

var r=17;

document.οnmοusemοve=function(ev) {

var e = ev || event;

var m=[];

m.x=e.clientX-catx; //鼠标坐标能落在左边等位置

m.y=e.clientY-170; //head_content、head、eye离上方的距离,使鼠标能落在上方区域

var s=[];

s.x=pL.offsetLeft;

s.y=pL.offsetTop;

var mosx = Math.abs(m.x - s.x);

var mosy = Math.abs(m.y - s.y);

var angle = Math.atan(mosy / mosx);

var cx = 0, cy = 0;

if (m.x >= s.x && m.y <= s.y) {

cx = Math.cos(angle) * r;

cy = Math.sin(angle) * -r;

// console.log("右下");

}

if (m.x < s.x && m.y < s.y) {

cx = Math.cos(angle) * -r;

cy = Math.sin(angle) * -r;

// console.log("左下");

}

if (m.x < s.x && m.y > s.y) {

cx = Math.cos(angle) * -r;

cy = Math.sin(angle) * r;

// console.log("左上");

}

if (m.x > s.x && m.y > s.y) {

cx = Math.cos(angle) * r;

cy = Math.sin(angle) * r;

// console.log("右上");

}

if((m.x+catx)>=catx && (m.x+catx)<=(catx+345) && (m.y+170)>=100 && (m.y+170)<=360){

pL.style.top =15+'px';

pR.style.top =15+'px';

pL.style.left =18+'px';

pR.style.left =18+'px';

}else{

pL.style.top = 15+ cy + 'px';

pR.style.top = 15+ cy + 'px';

pL.style.left =17+cx + 'px';

pR.style.left =17+cx + 'px';

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值