首页 > 语言 > JavaScript > 正文

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

2024-05-06 16:20:26
字体:
来源:转载
供稿:网友

这篇文章主要介绍了js实现精美的图片跟随鼠标效果,实例分析了javascript鼠标事件及页面样式的操作技巧,需要的朋友可以参考下

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

 

  1. <html> 
  2. <head> 
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
  4. <title>精美js鼠标跟随代码</title> 
  5. </head> 
  6. <body> 
  7. <script>  
  8. A=document.getElementById 
  9. B=document.all; 
  10. C=document.layers; 
  11. 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) 
  12. var offsetx=15  
  13. var offsety=10 
  14. nos=parseInt(T1.length/3) 
  15. rate=50 
  16. ie5fix1=0; 
  17. ie5fix2=0; 
  18. rightedge=B? document.body.clientWidth-T1[1] : window.innerWidth-T1[1]-20 
  19. bottomedge=B? document.body.scrollTop+document.body.clientHeight-T1[2] : window.pageYOffset+window.innerHeight-T1[2] 
  20. for (i=0;i<nos;i++){ 
  21. 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>"
  22. function createContainer(N,Xp,Yp,W,H,At,HT,Op,St){ 
  23. with (document){ 
  24. 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+"; "); 
  25. if(St){ 
  26. if (C) 
  27. write(" style='"); 
  28. write(St+";' "
  29. else write((A || B)?"'":""); 
  30. write((At)? At+">" : ">"); 
  31. write((HT) ? HT : ""); 
  32. if (!Op) 
  33. closeContainer(N) 
  34. function closeContainer(){ 
  35. document.write((A || B)?"</div>":"</layer>"
  36. function getXpos(N){ 
  37. if (A) 
  38. return parseInt(document.getElementById(N).style.left) 
  39. else if (B) 
  40. return parseInt(B[N].style.left) 
  41. else 
  42. return C[N].left 
  43. function getYpos(N){ 
  44. if (A) 
  45. return parseInt(document.getElementById(N).style.top) 
  46. else if (B) 
  47. return parseInt(B[N].style.top) 
  48. else 
  49. return C[N].top 
  50. function moveContainer(N,DX,DY){ 
  51. c=(A)? document.getElementById(N).style : (B)? B[N].style : (C)? C[N] : ""
  52. if (!B){ 
  53. rightedge=window.innerWidth-T1[1]-20 
  54. bottomedge=window.pageYOffset+window.innerHeight-T1[2] 
  55. c.left=Math.min(rightedge, DX+offsetx); 
  56. c.top=Math.min(bottomedge, DY+offsety); 
  57. function cycle(){ 
  58. //if (IE5)  
  59. if (document.all&&window.print){ 
  60. ie5fix1=document.body.scrollLeft; 
  61. ie5fix2=document.body.scrollTop; 
  62. for (i=0;i<(nos-1);i++){ 
  63. moveContainer("CUR"+i,getXpos("CUR"+(i+1)),getYpos("CUR"+(i+1))) 
  64. function newPos(e){ 
  65. moveContainer("CUR"+(nos-1),(B)?event.clientX+ie5fix1:e.pageX+2,(B)?event.clientY+ie5fix2:e.pageY+2) 
  66. function getedgesIE(){ 
  67. rightedge=document.body.clientWidth-T1[1] 
  68. bottomedge=document.body.scrollHeight-T1[2] 
  69. if (B){ 
  70. window.onload=getedgesIE 
  71. window.onresize=getedgesIE 
  72. if(document.layers) 
  73. document.captureEvents(Event.MOUSEMOVE) 
  74. document.onmousemove=newPos 
  75. setInterval("cycle()",rate) 
  76. </script> 
  77. </body> 
  78. </html> 

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选