yahoo.com顶端缓慢退出效果简单实现

yahoo.com首页源代码太多太杂了,看不出来它怎么弄的,就自己写了一个简单的,说不定什么时候就有用。主要是通过控制容器的高度来实现的,高度减少时会有加速的过程,滑动的效果看起来更好看一些。在IEFirefoxOpera下效果一致。演示页面

  1. <html>
  2. <head>
  3. <style type="text/css">
  4. body {
  5.     margin: 0 auto auto auto;
  6.     text-align: center;
  7. }
  8. #hide {
  9.     height: 68px; width: 950px;
  10.     text-align: right;
  11.     font-family: Trebuchet MS, sans-serif;font-size:small; 
  12.     background: #1A4B8E url(tp_top_bg.png) no-repeat;  background-position: bottom;
  13.     margin: 0 auto auto auto;
  14. }
  15. a:link,a:hover,a:visited,a:active {
  16.     color:#ffffff; text-decoration:none;
  17. }
  18. </style>
  19. <script language="javascript">
  20. //定义div的高度height=counter,i为计数累加,i的平方要小于counter值,因为height不能负数,这里i在0-8之间
  21. var counter = 68 ;
  22. var i = 0 ;
  23. function hide(){
  24.     //定义计数器,每隔100微秒触发一次startCounter()函数
  25.     var myInterval=window.setInterval("startCounter()",100);
  26. }
  27. function startCounter(){
  28. //点击以后把关闭链接的容器隐藏
  29. document.getElementById("close_link").style.display = "none";
  30. if(i < 9 && i >-1 ){
  31.     //设置div的高度为counter减去i的平方,这样高度减少时会有一个加速平滑过程,而不是匀速
  32.     document.getElementById("hide").style.height = counter-i*i;
  33.     i++;
  34.     //IE下,不能定义直接为height=0的高度,必须设置font-size的值为0
  35.     document.getElementById("hide").style.fontSize = 0;
  36.            
  37. }
  38. // i超过8或产生其他异常时,div隐藏
  39. else {
  40.     document.getElementById("hide").style.display = "none";       
  41. }
  42. }
  43. </script>
  44. </head>
  45. <body>
  46. <div id="hide"><div id="sample"><a href="#" onClick="hide();" id="close_link">Close</a></div></div>
  47. <div id="haha"><img src="1.gif" /></div>
  48. </body>
  49. </html>
[ 分类: 学习 Learning ] 由 Pan 发表于 July 8, 2006 12:05 pm  固定链接 

yahoo.com顶端缓慢退出效果简单实现》 这篇文章一共有0 条评论   我也想说两句

还没有人对这篇文章发表评论,赶紧留一个吧。

RSS feed for comments on this post. TrackBack URI

相关文章:

发表评论