这个特效非常简单,其中眼球和眼珠都是特定的图片。只要掌握好距离坐标就没问题。我就直接贴代码,有兴趣的朋友可以自己复制下来运行一下,下面的眼睛图像就是我的文件用到的图像,比较难看.。我就把我的代码贴出来好了。

其中的html文件如下:

<!DOCTYPE html>
<html>
<head>
<title>eye</title>
<script src="eye.js" type="text/javascript"></script>
<style>
div.img { background:url("../bgcolor.jpg") no-repeat; left:67px; top:7px; position:relative;}
:root body div.img {background:url("../bgcolor.jpg") no-repeat; left:67px; top:0px; position:relative;}
div.img p { width:250px; height:150px;}
#leftBall,#leftEye,#rightBall,#rightBall1,#rightBall2,#rightBall3,#rightBall4,#rightBall6,#rightBall5,#rightEye {float: left;position: absolute;}
#leftEye{left:130px;top:200px;}
#leftBall{left:150px;top:230px;}
#rightBall1{left:370px;top:230px;}
#rightBall2{left:370px;top:230px;}
#rightBall3{left:370px;top:230px;}
#rightBall4{left:370px;top:230px;}
#rightBall5{left:370px;top:230px;}
#rightBall6{left:370px;top:230px;}
#rightBall{left:350px;top:230px;}
#rightEye{left: 330px;top:200px;}
a {text-decoration:none; font-size:50px; margin-left: 20px;}
a:visited{color:green;}
a:link {color:blue;}
a:hover {color:red;}
a:active {color:white;} </style>
</head>
<body>
<img src="ball.JPG" width="14" height="14" id="rightBall1" /><img src="ball.JPG" width="14" height="14" id="rightBall2" /><img src="ball.JPG" width="14" height="14" id="rightBall3" />
<img src="ball.JPG" width="14" height="14" id="rightBall4" /><img src="ball.JP
G" width="14" height="14" id="rightBall5" /><img src="ball.JPG" width="14" height="14" id="rightBall6" />
<div id="rewrite"><h1 id="biaoTi"></h1><br />24 display:<input type="radio" name="radico"/>YES   <input type="radio" name="radico" checked="checked"/>NO</div>
<marquee direction="">wohui yi dong</marquee>
<div class="img"><p></p></div></body>
<div>
<img src="../e.png" id="leftEye" />
<img src="../e.png" id="rightEye" />
<img src="ball.JPG" width="14" height="14" id="leftBall" />
<img src="ball.JPG" width="14" height="14" id="rightBall" />
<a href="http://www.baidu.com/" >baidu.com</a>
</div>
</html>

其中的JS文件如下:eye.js

/**
* Created with JetBrains WebStorm.
* User: Administrator
* Date: 13-9-5
* Time: 下午4:25
* To change this template use File | Settings | File Templates.
*/ window.onload=dateday;
document.onmousemove=moveHandle;
var tempx=new Array;
var tempy=new Array;
var i=0;
function moveHandle(evt){
if(!evt)
evt=window.event; makeMouseMove(evt.clientX,evt.clientY);
}
function makeMouseMove(xPos,yPos){
tempx[i]=xPos;
tempy[i]=yPos;
i++;
if(i==20){
var k=0;
for(var j=1;j<=6;j++){
mouseMove(j,tempx[k],tempy[k]);
k+=3
}
i=0;
}
eyeMove(xPos,yPos);
}
function eyeMove(xPos,yPos){
var leftBall=document.getElementById("leftBall").style;
var rightBall=document.getElementById("rightBall").style;
leftBall.left=eyeFoll(xPos,130);
leftBall.top=eyeFoll(yPos,200);
rightBall.left=eyeFoll(xPos,330);
rightBall.top=eyeFoll(yPos,200);
function eyeFoll(currPos,eyePos){
return Math.min(Math.max(currPos,eyePos+3),eyePos+60)+"px";
}
}
function mouseMove(i,xPos,yPos){ var rightBall=document.getElementById("rightBall"+i).style; rightBall.left=mouseFoll(xPos,330);
rightBall.top=mouseFoll(yPos,200);
function mouseFoll(currPos,eyePos){
return currPos+"px";
} } function dateday(){
var date=new Date();var hour;var min=date.getMinutes();var second=date.getSeconds();var houzui="";
if(second<10)second = "0"+second;
if(show24()||date.getHours()<13){
hour= date.getHours();
}
if(show24()==false){
if(date.getHours()>12){
hour= date.getHours()-12;houzui=" PM";
}
else{
hour= date.getHours();houzui=" AM";
}
}
var temp=Math.floor((date.getTime())/(1000*60*60));min=Math.floor((date.getTime()-temp*60*1000*60)/(1000*60));second=Math.floor((date.getTime()-temp*60*60*1000-min*1000*60)/1000);
document.getElementById("biaoTi").innerHTML="BeiJing Time: "+hour+":"+min+":"+second+houzui;
setTimeout(dateday,1000)
}
function show24(){
return document.getElementsByName("radico")[0].checked;
}

其中用到了三张图片,分别是:

背景图片:

眼眶:(PNG格式)

眼珠:

将上面三幅图下载下来,对照好html文件中的图片路径设置好,就可以运行了。js文件路径也要设置好,一般将他们放在同一个文件夹下,在href中就可以直接输入图片名称就可以了!

javascript特效:会随着鼠标而动的眼睛的更多相关文章

  1. javascript 特效实现(3)—— 鼠标滑过显示二级菜单效果

    1. 关键代码:使用 switch 或 if 判断语句,改变对应的二级菜单显示方式为 block 或 none function selectTabMenu(i){ switch(i){ case 7 ...

  2. JavaScript特效源码(4、鼠标特效)

    1.鼠标感应--渐现特效 鼠标感应渐显图片[平时很模糊的图片鼠标一放上就显示清楚] [修改图片名称即可][共2步] ====1.将以下代码加入HTML的<head></head> ...

  3. Javascript特效代码大全(420个)(转)

    转载自:Javascript特效代码大全(420个) 收集资料,以便使用+面试+学习  ├ Cookie脚本 ├ 随访问次数变提示 ├ 集成Cookies ├ 使窗口仅弹出一次 ├ 签名提示程序 ├ ...

  4. 10种JavaScript特效实例让你的网站更吸引人

    我们有三种主要的方法(从难到易):自己动手写脚本;使用类似于jQuery和mooTools的JavaScript框架(可以让编写代码变得更容易些);使用能工作于现有的JavaScript框架下的提前预 ...

  5. JavaScript特效源码(1、文字特效)

    注:本文以及以下关于Javascript特效源码都是分享自JavaScript源码大全. 1.逐隐逐现的的特效 逐隐逐现的文字特效[推荐使用][适用于IE4++] (修改显示的文字后根据说明进行共2步 ...

  6. JavaScript特效(调试笔记)

    JavaScript特效 一.在网页上显示当前的时间日期,例如:“2016年3月26日 星期六”. js源代码: function getTime() { var today = new Date() ...

  7. Canvas与javaScript特效笔记

    第六章   Canvas与javaScript特效笔记 q  <canvas>标签的用途 HTML5 canvas 提供了通过 JavaScript 绘制图形的方法,此方法使用简单但功能强 ...

  8. JavaScript进阶系列07,鼠标事件

    鼠标事件有Keydown, Keyup, Keypress,但Keypress与Keydown和Keyup不同,如果按ctrl, shift, caps lock......等修饰键,不会触发Keyp ...

  9. 【JavaScript】在同一个网页中实现多个JavaScript特效

    在网页中,假设出现两次<script type="text/javascript"></script>标签,全部的JavaScipt脚本都不会再生效,仅仅能 ...

随机推荐

  1. 在Attribute Inspector 上显示自定义的控件的属性

    FirstColor 跟 CornerRadious 都是新增的显示属性具体实现方法如下: @property(nonatomic,weak)IBInspectable UIColor *firstC ...

  2. Java如何实现对Mysql数据库的行锁

    场景如下:     用户账户有余额,当发生交易时,需要实时更新余额.这里如果发生并发问题,那么会造成用户余额和实际交易的不一致,这对公司和客户来说都是很危险的. 那么如何避免:     网上查了下,有 ...

  3. HDU3535-AreYouBusy

    描述: As having become a junior, xiaoA recognizes that there is not much time for her to AC problems, ...

  4. python -- 计算数学题--用程序解决问题1

    1.#一个四位数,各位数字互不相同,所有数字之和等于6,并且这个数是11的倍数,#则满足这种要求的四位数有多少个? 代码如下: # -*- coding: UTF-8 -*-import systyp ...

  5. LintCode-最长公共子串

    题目描述: 给出两个字符串,找到最长公共子串,并返回其长度. 注意事项 子串的字符应该连续的出现在原字符串中,这与子序列有所不同. 样例 给出A=“ABCD”,B=“CBCE”,返回 2 public ...

  6. ORA-20000: ORU-10027: buffer overflow, limit of 10000 bytes

        要用dbms_output.put_line来输出语句,遇到以下错误: ERROR 位于第 1 行: ORA-20000: ORU-10027: buffer overflow, limit ...

  7. Access2007中如何运行SQL执行SQl语句

    1. 在“创建”选项卡中,单击“其他”组中的“查询设计”. 2. 单击“显示表”对话框中的“关闭”,而不添加任何表或查询. 3. 在“设计”选项卡中,单击“查询类型”工作组中的“联合”. 4. 单击“ ...

  8. 使用Docker构建持续集成与自动部署的Docker集群

    为什么使用Docker " 从我个人使用的角度讲的话  部署来的更方便 只要构建过一次环境 推送到镜像仓库 迁移起来也是分分钟的事情 虚拟化让集群的管理和控制部署都更方便 hub.docke ...

  9. 基于Visual C++2013拆解世界五百强面试题--题11-查找数字出现次数

    在排序数组中,找出给定数字出现的次数比如{ 1, 2, 2, 2, 3}中2的出现次数是3次 我们可使用二分查找发,分别查找出2最先出现的位置和最后出现的位置相减即可. 下面是上代码: #includ ...

  10. JSP中的相对路径和绝对路径(转)

    1.首先明确两个概念: 服务器路径:形如:http://192.168.0.1/的路径 Web应用路径:形如:http://192.168.0.1/yourwebapp的路径 2.关于相对路径与绝对路 ...