js实现精美的图片跟随鼠标效果实例


Posted in Javascript onMay 16, 2015

本文实例讲述了js实现精美的图片跟随鼠标效果实现方法。分享给大家供大家参考。具体实现方法如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>精美js鼠标跟随代码</title>
</head>
<body>
<script> 
A=document.getElementById
B=document.all;
C=document.layers;
T1=new Array("trail1.gif",38,35,"trail2.gif",30,31,"trail3.gif",28,26,"trail4.gif",22,21,"trail5.gif",16,16,"trail6.gif",10,10)
var offsetx=15 
var offsety=10
nos=parseInt(T1.length/3)
rate=50
ie5fix1=0;
ie5fix2=0;
rightedge=B? document.body.clientWidth-T1[1] : window.innerWidth-T1[1]-20
bottomedge=B? document.body.scrollTop+document.body.clientHeight-T1[2] : window.pageYOffset+window.innerHeight-T1[2]
for (i=0;i<nos;i++){
createContainer("CUR"+i,i*10,i*10,i*3+1,i*3+2,"","<img src='"+T1[i*3]+"' width="+T1[(i*3+1)]+" height="+T1[(i*3+2)]+"border=0>")
}
function createContainer(N,Xp,Yp,W,H,At,HT,Op,St){
with (document){
write((!A && !B) ? "<layer id='"+N+"' left="+Xp+" top="+Yp+" width="+W+" height="+H : "<div id='"+N+"'"+"style='position:absolute;left:"+Xp+"; top:"+Yp+"; width:"+W+"; height:"+H+"; ");
if(St){
if (C)
write(" style='");
write(St+";' ")
}
else write((A || B)?"'":"");
write((At)? At+">" : ">");
write((HT) ? HT : "");
if (!Op)
closeContainer(N)
}
}
function closeContainer(){
document.write((A || B)?"</div>":"</layer>")
}
function getXpos(N){
if (A)
return parseInt(document.getElementById(N).style.left)
else if (B)
return parseInt(B[N].style.left)
else
return C[N].left
}
function getYpos(N){
if (A)
return parseInt(document.getElementById(N).style.top)
else if (B)
return parseInt(B[N].style.top)
else
return C[N].top
}
function moveContainer(N,DX,DY){
c=(A)? document.getElementById(N).style : (B)? B[N].style : (C)? C[N] : "";
if (!B){
rightedge=window.innerWidth-T1[1]-20
bottomedge=window.pageYOffset+window.innerHeight-T1[2]
}
c.left=Math.min(rightedge, DX+offsetx);
c.top=Math.min(bottomedge, DY+offsety);
}
function cycle(){
//if (IE5) 
if (document.all&&window.print){
ie5fix1=document.body.scrollLeft;
ie5fix2=document.body.scrollTop;
}
for (i=0;i<(nos-1);i++){
moveContainer("CUR"+i,getXpos("CUR"+(i+1)),getYpos("CUR"+(i+1)))
}
}
function newPos(e){
moveContainer("CUR"+(nos-1),(B)?event.clientX+ie5fix1:e.pageX+2,(B)?event.clientY+ie5fix2:e.pageY+2)
}
function getedgesIE(){
rightedge=document.body.clientWidth-T1[1]
bottomedge=document.body.scrollHeight-T1[2]
}
if (B){
window.onload=getedgesIE
window.onresize=getedgesIE
}
if(document.layers)
document.captureEvents(Event.MOUSEMOVE)
document.onmousemove=newPos
setInterval("cycle()",rate)
</script>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
htm调用JS代码
Mar 15 Javascript
JavaScript isPrototypeOf和hasOwnProperty使用区别
Mar 04 Javascript
JavaScript字符串插入、删除、替换函数使用示例
Jul 25 Javascript
基于javascript滚动图片具体实现
Nov 18 Javascript
jQuery Masonry瀑布流插件使用详解
Nov 17 Javascript
jQuery实现仿QQ在线客服效果的滚动层代码
Oct 15 Javascript
Bootstrap中的表单验证插件bootstrapValidator使用方法整理(推荐)
Jun 21 Javascript
Vue-cli-webpack搭建斗鱼直播步骤详解
Nov 17 Javascript
基于vue中keep-alive缓存问题的解决方法
Sep 21 Javascript
优雅的elementUI table单元格可编辑实现方法详解
Dec 23 Javascript
three.js 将图片马赛克化的示例代码
Jul 31 Javascript
JavaScript数组排序的六种常见算法总结
Aug 18 Javascript
js实现精美的银灰色竖排折叠菜单
May 16 #Javascript
JavaScript实现鼠标滑过处生成气泡的方法
May 16 #Javascript
JavaScript中继承用法实例分析
May 16 #Javascript
jQuery实现不断闪烁文字的方法
May 15 #Javascript
javascript实现可拖动变色并关闭层窗口实例
May 15 #Javascript
JavaScript实现简单的数字倒计时
May 15 #Javascript
JavaScript生成福利彩票双色球号码
May 15 #Javascript
You might like
PHP与MySQL开发中页面乱码的产生与解决
2008/03/27 PHP
PHP输出XML到页面的3种方法详解
2013/06/06 PHP
PHP删除HTMl标签的三种解决方法
2013/06/30 PHP
PHP和Shell实现检查SAMBA与NFS Server是否存在
2015/01/07 PHP
yii2.0整合阿里云oss的示例代码
2017/09/19 PHP
让插入到 innerHTML 中的 script 跑起来的实现代码
2006/07/01 Javascript
javascript中使用css需要注意的地方小结
2010/09/01 Javascript
轻松创建nodejs服务器(5):事件处理程序
2014/12/18 NodeJs
基于jQuery实现Ajax验证用户名是否存在实例
2016/03/30 Javascript
JavaScript蒙板(model)功能的简单实现代码
2016/08/04 Javascript
JS 验证密码 不能为空,必须含有数字、字母、特殊字符,长度在8-12位
2017/06/21 Javascript
JS通过调用微信API实现微信支付功能的方法示例
2017/06/29 Javascript
基于webpack4搭建的react项目框架的方法
2018/06/30 Javascript
JS扁平化输出数组的2种方法解析
2019/09/17 Javascript
vue h5移动端禁止缩放代码
2019/10/28 Javascript
jQuery实现轮播图效果demo
2020/01/11 jQuery
小程序websocket心跳库(websocket-heartbeat-miniprogram)
2020/02/23 Javascript
vue中解决拖拽改变存在iframe的div大小时卡顿问题
2020/07/22 Javascript
利用Python绘制数据的瀑布图的教程
2015/04/07 Python
黑科技 Python脚本帮你找出微信上删除你好友的人
2016/01/07 Python
python基础入门学习笔记(Python环境搭建)
2016/01/13 Python
详解opencv Python特征检测及K-最近邻匹配
2019/01/21 Python
python实现批量修改服务器密码的方法
2019/08/13 Python
Tensorflow中tf.ConfigProto()的用法详解
2020/02/06 Python
瑞典廉价机票预订网站:Seat24
2018/06/19 全球购物
一套.net面试题及答案
2016/11/02 面试题
在网络中有两台主机A和B,并通过路由器和其他交换设备连接起来,已经确认物理连接正确无误,怎么来测试这两台机器是否连通?如果不通,怎么来判断故障点?怎么排
2014/01/13 面试题
应届大学生自荐信格式
2013/09/21 职场文书
开工仪式策划方案
2014/05/23 职场文书
年度评优评先方案
2014/06/03 职场文书
2015年感恩节活动总结
2015/03/24 职场文书
巴黎圣母院读书笔记
2015/06/26 职场文书
人事行政部各岗位职责说明书!
2019/07/15 职场文书
Java Spring 控制反转(IOC)容器详解
2021/10/05 Java/Android
Win11怎么启动任务管理器?Win11启动任务管理器的几种方法
2021/11/23 数码科技
Java 异步任务计算FutureTask
2022/04/28 Java/Android