首页 > 语言 > JavaScript > 正文

javascript实现超炫的向上滑行菜单实例

2024-05-06 16:24:15
字体:大 中 小
来源:转载
供稿:网友

这篇文章主要介绍了javascript实现超炫的向上滑行菜单实现方法,以一个完整实例形式分析了javascript针对页面元素的遍历与样式操作相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了javascript实现超炫的向上滑行菜单。分享给大家供大家参考。具体如下:

 

 
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
  3. <html xmlns="http://www.w3.org/1999/xhtml"> 
  4. <head> 
  5. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
  6. <title>JS实现文字上下滑动导航</title> 
  7. <style type="text/css">  
  8. body { margin:0; background:#66FF99; } 
  9. ul { padding-left:0; margin:0; } 
  10. li { list-style:none; } 
  11. #nav { height:40px; background:#900; margin-top:50px; } 
  12. #nav ul { width:240px; height:40px; margin:0 auto; } 
  13. #nav li {height:40px; width:240px;} 
  14. #nav a { float:left; width:240px;position:relative; height:40px; overflow:hidden; font-size:14px; color:#e0e03a; text-decoration:none; cursor:pointer; } 
  15. #nav strong { float:left;width:240px; } 
  16. #nav span { float:left;width:200px; padding:0 20px; height:40px; line-height:40px; background:#900; clear:both; white-space:nowrap;} 
  17. #nav .active,#nav .current span { background:#600; color:#fff; } 
  18. #nav .current .active { color:#e0e03a; } 
  19. </style> 
  20. <script>  
  21. window.onload=function() 
  22. { 
  23. var oDiv=document.getElementById('nav'); 
  24. var aStrong=oDiv.getElementsByTagName('strong'); 
  25. var aA=oDiv.getElementsByTagName('a'); 
  26. var iTarget=oDiv.getElementsByTagName('li')[0].offsetHeight; 
  27. for(var i=0; i<aStrong.length; i++) 
  28. { 
  29. aA[i].style.width=aStrong[i].style.width=aStrong[i].getElementsByTagName('span')[0].offsetWidth+'px'; 
  30. aStrong[i].style.position='absolute'; 
  31. aStrong[i].style.top=aStrong[i].style.left=0; 
  32. aStrong[i].onmouseover=function() 
  33. { 
  34. startMove(this, -iTarget); 
  35. }; 
  36. aStrong[i].onmouseout=function() 
  37. { 
  38. startMove(this, 0); 
  39. }; 
  40. } 
  41. }; 
  42. function startMove(obj,target) 
  43. { 
  44. clearInterval(obj.iTime); 
  45. obj.iTime=setInterval(function(){ 
  46. if(obj.offsetTop==target) 
  47. { 
  48. clearInterval(obj.iTime); 
  49. } 
  50. else 
  51. { 
  52. var iSpeed=(target-obj.offsetTop)/4; 
  53. iSpeed=iSpeed>0?Math.ceil(iSpeed):Math.floor(iSpeed); 
  54. obj.style.top=obj.offsetTop+iSpeed+'px'; 
  55. } 
  56. }, 30); 
  57. } 
  58. </script> 
  59. </head> 
  60. <body> 
  61. <div id="nav"> 
  62. <ul> 
  63. <li class="current"> 
  64. <a href="#"> 
  65. <strong> 
  66. <span>首页</span> 
  67. <span class="active">首页</span> 
  68. </strong> 
  69. </a> 
  70. </li> 
  71. <li> 
  72. <a href="#"> 
  73. <strong> 
  74. <span>前端开发课程</span> 
  75. <span class="active">前端开发课程</span> 
  76. </strong> 
  77. </a> 
  78. </li> 
  79. <li> 
  80. <a href="#"> 
  81. <strong> 
  82. <span>妙味视频教程</span> 
  83. <span class="active">妙味视频教程</span> 
  84. </strong> 
  85. </a> 
  86. </li> 
  87. <li> 
  88. <a href="#"> 
  89. <strong> 
  90. <span>周末班上课安排</span> 
  91. <span class="active">周末班上课安排</span> 
  92. </strong> 
  93. </a> 
  94. </li> 
  95. <li> 
  96. <a href="#"> 
  97. <strong> 
  98. <span>结课标准</span> 
  99. <span class="active">结课标准</span> 
  100. </strong> 
  101. </a> 
  102. </li> 
  103. <li> 
  104. <a href="#"> 
  105. <strong> 
  106. <span>联系妙味</span> 
  107. <span class="active">联系妙味</span> 
  108. </strong> 
  109. </a> 
  110. </li> 
  111. </ul> 
  112. </div> 
  113. </body> 
  114. </html> 

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

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

图片精选