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 相关文章推荐
传递参数的标准方法(jQuery.ajax)
Nov 19 Javascript
基于jQuery的仿flash的广告轮播
Nov 05 Javascript
JS JQUERY实现滚动条自动滚到底的方法
Jan 09 Javascript
JQUERY的AJAX请求缓存里的数据问题处理
Feb 23 Javascript
jQuery 常用代码集锦(必看篇)
May 16 Javascript
Node.js的npm包管理器基础使用教程
May 26 Javascript
React创建组件的三种方式及其区别
Jan 12 Javascript
干货!教大家如何选择Vue和React
Mar 13 Javascript
浅谈Vue.js 中的 v-on 事件指令的使用
Nov 25 Javascript
微信小程序左右滚动公告栏效果代码实例
Sep 16 Javascript
微信小程序错误this.setData报错及解决过程
Sep 18 Javascript
Vue 实现从小到大的横向滑动效果详解
Oct 16 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语句的实现代码
2011/06/24 PHP
codeigniter发送邮件并打印调试信息的方法
2015/03/21 PHP
thinkphp,onethink和thinkox中验证码不显示的解决方法分析
2016/06/06 PHP
PHP自定义错误用法示例
2016/09/28 PHP
php学习笔记之mb_strstr的基本使用
2018/02/03 PHP
PDO::_construct讲解
2019/01/27 PHP
php高性能日志系统 seaslog 的安装与使用方法分析
2020/02/29 PHP
IE 下的只读 innerHTML
2009/08/21 Javascript
Mootools 1.2教程 Fx.Tween的使用
2009/09/15 Javascript
JavaScript基本编码模式小结
2012/05/23 Javascript
Javascript与jQuery方法的隐藏与显示
2015/01/19 Javascript
学习JavaScript设计模式(接口)
2015/11/26 Javascript
JavaScript脚本库编写的方法
2015/12/09 Javascript
利用JS实现数字增长
2016/07/28 Javascript
JavaScript第一篇之实现按钮全选、功能
2016/08/21 Javascript
js html5 css俄罗斯方块游戏再现
2016/10/17 Javascript
讲解vue-router之命名路由和命名视图
2018/05/28 Javascript
Vue实现调节窗口大小时触发事件动态调节更新组件尺寸的方法
2018/09/15 Javascript
微信小程序调用后台service教程详解
2020/11/06 Javascript
分享python数据统计的一些小技巧
2016/07/21 Python
Python使用回溯法子集树模板获取最长公共子序列(LCS)的方法
2017/09/08 Python
利用Python-iGraph如何绘制贴吧/微博的好友关系图详解
2017/11/02 Python
python 随机森林算法及其优化详解
2019/07/11 Python
python实现多进程通信实例分析
2019/09/01 Python
Python使用APScheduler实现定时任务过程解析
2019/09/11 Python
解决python web项目意外关闭,但占用端口的问题
2019/12/17 Python
linux环境下安装python虚拟环境及注意事项
2020/01/07 Python
Python如何使用vars返回对象的属性列表
2020/10/17 Python
CSS3 旋转立方体问题详解
2020/01/09 HTML / CSS
品牌服务方案
2014/06/03 职场文书
优秀少先队员事迹材料
2014/12/24 职场文书
医德医风自我评价2015
2015/03/03 职场文书
见习期个人总结
2015/03/05 职场文书
Python数据分析入门之数据读取与存储
2021/05/13 Python
Oracle 区块链表创建过程详解
2021/05/15 Oracle
MySQL系列之十 MySQL事务隔离实现并发控制
2021/07/02 MySQL