紧跟着的眼睛的javascript实现

首先介绍一下onmousemove事件,当页面的访问者移动鼠标时,就会触发onmousemove事件。在本例中,我们让用户觉得有一双眼睛一直盯着他们的鼠标移动。
鼠标在两只眼睛的中间下方
“紧跟着的眼睛”实例的HTML

<!DOCTYPE html>
<html>
<head>
    <title>Mouse Movements</title>
    <link rel="stylesheet" href="script04.css">
    <script src="script04.js"></script>
</head>
<body>
    <img src="images/circle.gif" alt="left eye" id="lEye">
    <img src="images/circle.gif" alt="right eye" id="rEye">
    <img src="images/lilRed.gif" alt="left eyeball" id="lDot">
    <img src="images/lilRed.gif" alt="right eyeball" id="rDot">
</body>
</html>```
“紧跟着的眼睛”实例的CSS

body {
background-color: #FFF;
}

lEye, #rEye {

position: absolute;
top: 100px;
width: 24px;
height: 25px;

}

lDot, #rDot {

position: absolute;
top: 113px;
width: 4px;
height: 4px;

}

lEye {

left: 150px;

}

rEye {

left: 200px;

}

lDot {

left: 118px;

}

rDot {

left: 153px;

}

“紧跟着的眼睛”实例的JS

document.onmousemove = moveHandler;

function moveHandler(evt) {
if (!evt) {
evt = window.event;
}
animateEyes(evt.clientX, evt.clientY);
}

function animateEyes(xPos,yPos) {
var rightEye = document.getElementById(“rEye”);
var leftEye = document.getElementById(“lEye”);
var rightEyeball = document.getElementById(“rDot”).style;
var leftEyeball = document.getElementById(“lDot”).style;

leftEyeball.left = newEyeballPos(xPos, leftEye.offsetLeft);
leftEyeball.top = newEyeballPos(yPos, leftEye.offsetTop);
rightEyeball.left = newEyeballPos(xPos, rightEye.offsetLeft);
rightEyeball.top = newEyeballPos(yPos, rightEye.offsetTop);

function newEyeballPos(currPos,eyePos) {
    return Math.min(Math.max(currPos,eyePos+3), eyePos+17) + "px";
}

}

“`
重点需要理解的是CSS文件中的style,特别是对于布局,可以在草纸上计算一下相关的像素点的大小,以帮助理解。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值