首页 > 语言 > JavaScript > 正文

js 右侧浮动层效果实现代码(跟随滚动)

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

因为项目上有这样的需求,在网上也查了些东西,之前是想找个差不多类似的套用一下。后来发觉没有合适的,因时间紧迫就自己动手写了一个简单的 ,示例代码如下 兼容火狐和IE7+

实现代码一、

 

 
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " 
  2. <html> 
  3. <head> 
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
  5. <title>无标题文档</title> 
  6. <!--***********开始*************--> 
  7.  
  8. <script type="text/javascript"
  9. //<![CDATA[  
  10. var tips; var theTop = 200/*这是默认高度,越大越往下*/var old = theTop; 
  11. function initFloatTips() { 
  12. tips = document.getElementById('floatTips'); 
  13. moveTips(); 
  14. }; 
  15. function moveTips() { 
  16. var tt = 50; 
  17. if (window.innerHeight) { 
  18. pos = window.pageYOffset 
  19. else if (document.documentElement && document.documentElement.scrollTop) { 
  20. pos = document.documentElement.scrollTop 
  21. else if (document.body) { 
  22. pos = document.body.scrollTop; 
  23. pos = pos - tips.offsetTop + theTop; 
  24. pos = tips.offsetTop + pos / 10; 
  25. if (pos < theTop) pos = theTop; 
  26. if (pos != old) { 
  27. tips.style.top = pos + "px"
  28. tt = 10; 
  29. old = pos; 
  30. setTimeout(moveTips, tt); 
  31. //!]]>  
  32. </script> 
  33.  
  34. <style type="text/css"
  35. .floatTips 
  36. position: absolute; 
  37. border: solid 1px #777; 
  38. padding: 3px; 
  39. top: 250px; 
  40. right: 5px; 
  41. width: 30px; 
  42. height: 300px; 
  43. background: #cccccc; 
  44. color: white; 
  45. .showDiv 
  46. position: absolute; 
  47. border: solid 1px #777; 
  48. padding: 3px; 
  49. top: 250px; 
  50. right: 5px; 
  51. width: 300px; 
  52. height: 300px; 
  53. background: #cccccc; 
  54. color: white; 
  55. </style> 
  56. <script type="text/javascript"
  57. function FunOnmouseUp() { 
  58. var objFloatTips = $("floatTips"); 
  59. var objActivityContext = $("activityContext"); 
  60. objFloatTips.className = "showDiv"
  61. objActivityContext.style.display = ""
  62. function FunMouseOut() { 
  63. var objFloatTips = $("floatTips"); 
  64. var objActivityContext = $("activityContext"); 
  65. objFloatTips.className = "floatTips"
  66. objActivityContext.style.display = "none"
  67.  
  68. function $(objID) { 
  69. return document.getElementById(objID); 
  70. </script> 
  71.  
  72. </head> 
  73. <body onload="initFloatTips()"
  74. <div id="floatTips" onmouseover="FunOnmouseUp()" onmouseout="FunMouseOut()" class="floatTips"
  75. 最新的活动 
  76. <div id="activityContext" style="display: none"
  77. 显示最新的活动 
  78. </div> 
  79. </div> 
  80. <!--**********结束***************--> 
  81. <table width="100%" border="0" cellpadding="0" cellspacing="0" bgcolor="#F7F7F7"
  82. <tr> 
  83. <td height="2101"
  84. </td> 
  85. </tr> 
  86. </table> 
  87. </body> 
  88. </html> 

如果有时间的话 会稍作美化 然后加上动画效果 应该就能算是个不错的浮动隐藏层了。

方法二、

一、把以下代码插入

标签中:

 

 
  1. <div id="FloatDIV" style="position: absolute;top: 0px; border-right: activeborder 1px solid; border-top: activeborder 1px solid; border-left: activeborder 1px solid; border-bottom: activeborder 1px solid;"
  2. 浮动层示例:<br /> 
  3. <a target="_blank" href="tencent://message/?uin=101535223&Site=http://www.vevb.com&Menu=yes"><img border="0" src="http://wpa.qq.com/pa?p=1:101535223:3" alt="有事您说话"></a> 
  4. </div> 

二、把以下代码插到标签之后,设置MarginLeft、MarginTop、Width、Heigth四个变量的值

 

 
  1. <script language="javascript" type="text/javascript"
  2. var MarginLeft = 30; //浮动层离浏览器右侧的距离 
  3. var MarginTop = 50; //浮动层离浏览器顶部的距离 
  4. var Width = 120; //浮动层宽度 
  5. var Heigth= 45; //浮动层高度 
  6.  
  7. //设置浮动层宽、高 
  8. function Set() 
  9. document.getElementById("FloatDIV").style.width = Width; 
  10. document.getElementById("FloatDIV").style.height = Heigth; 
  11.  
  12. //实时设置浮动层的位置 
  13. function Move() 
  14. document.getElementById("FloatDIV").style.top = document.documentElement.scrollTop + MarginTop; 
  15. document.getElementById("FloatDIV").style.left = document.documentElement.clientWidth - Width - MarginLeft; 
  16. setTimeout("Move();",100); 
  17.  
  18. Set(); 
  19. Move(); 
  20. </script> 


注:相关教程知识阅读请移步到JavaScript/Ajax教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选