当柳上原的风吹向天际的时候...

真正的快乐来源于创造

  BlogJava :: 首页 :: 联系 :: 聚合  :: 管理
  368 Posts :: 1 Stories :: 201 Comments :: 0 Trackbacks
这回要比上次强了,有效的把内容,形式和行为分离。

截图:


全部代码:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
 
<head>
  
<title>JS+CSS菜单示例二</title>
  
<script src="js/jquery-1.3.1.js" type="text/javascript"></script>
  
<style type="text/css">
    <!--
    #menubar ul
{
      margin
:0;
      padding
:0;
      list-style-type
:none;
    
}
    #menubar li
{
      float
:left;
      dispaly
:block;      
    
}
    #menubar li a
{
      width
:80px;
      height
:20px;
      line-height
: 20px;

      font-size
:14px; 
      border-right
:1px solid #ffffff;  
      border-bottom
:1px dashed #ffffff; 
      
      color
:#ffffff;
      text-decoration
:none;
      text-align
:center;
      font-weight
:bold;
      background-image
:url(img/menubarBg.gif);
    
}

    #menubar li a:hover
{
      color
:#ffffff;
      background-image
:url(img/munuBarItemBG.gif);      
      text-decoration
:underline;
    
}

    #menubar li ul
{
      display
:none;
      margin
:0;
      padding
:0;
      list-style-type
:none;
    
}
    #menubar li ul li
{
      float
:none;
      dispaly
:block;      
    
}
    #menubar li ul li a
{
      width
:80px;
      height
:20px;
      line-height
: 20px;

      font-size
:14px; 
      border-right
:1px solid #ffffff;  
      
      color
:#ffffff;
      text-decoration
:none;
      text-align
:center;
      font-weight
:bold;
      background-image
:url(img/menubarBg.gif);
    
}

    #menubar li ul li a:hover
{
      color
:#ffffff;
      background-image
:url(img/munuBarItemBG.gif);      
      text-decoration
:underline;
    
}

    -->
  
</style>    
 
</head>

 
<body>
  弹出式菜单示例二
  
<div>
    
<ul id="menubar">
      
<li><href="#">汉朝</a>
        
<ul>
          
<li><href="#">卫青</a></li>
          
<li><href="#">霍去病</a></li>
          
<li><href="#">班超</a></li>
          
<li><href="#">陈汤</a></li>
        
</ul>
      
</li>
      
<li><href="#">晋朝</a>
        
<ul>
          
<li><href="#">阮籍</a></li>
          
<li><href="#">嵇康</a></li>
          
<li><href="#">陶渊明</a></li>
          
<li><href="#">王羲之</a></li>
          
<li><href="#">桓温</a></li>
        
</ul>
      
</li>
      
<li><href="#">唐朝</a>
        
<ul>
          
<li><href="#">李世民</a></li>
          
<li><href="#">李白</a></li>
          
<li><href="#">杜甫</a></li>
          
<li><href="#">狄仁杰</a></li>
        
</ul>
      
</li>
      
<li><href="#">宋朝</a>
        
<ul>
          
<li><href="#">岳飞</a></li>
          
<li><href="#">辛弃疾</a></li>
          
<li><href="#">苏轼</a></li>
        
</ul>
      
</li>
      
<li><href="#">明朝</a>
        
<ul>
          
<li><href="#">徐达</a></li>
          
<li><href="#">蓝玉</a></li>
          
<li><href="#">于谦</a></li>
          
<li><href="#">戚继光</a></li>
          
<li><href="#">谭伦</a></li>
        
</ul>
      
</li>
    
</ul>
  
</div>
 
</body>
</html>

<SCRIPT LANGUAGE="JavaScript">
<!--
  
  
function $(id){
    
return document.getElementById(id);
  }

  
function showMenu(ulId,visible){
    
var ul=$(ulId);

    
if(visible==true){
      ul.style.display
="block";
    }
    
else{
      ul.style.display
="none";
    }
  }

  window.onload
=function(){

    
var menubar=$("menubar");

    
for(var i=0;i<menubar.childNodes.length;i++){
      
new function(){
        
var li=menubar.childNodes[i];
        
var subul=li.childNodes[2];

        li.attachEvent('onmouseover',
          
function(){
            subul.style.display
="block";
          }
        );
        li.attachEvent('onmouseout',
          
function(){
            subul.style.display
="none";
          }
        );
      }
    }
  }
//-->
</SCRIPT>

上面代码中最重要的部分是循环中代码放入到一个函数中,这是为了避免闭包的消极影响,使循环一次都生成一个函数实例,每个实例体针对的每个li和ul都是不同的。

全体代码下载:
http://www.blogjava.net/Files/heyang/JSCSSPopupmenu20090821151741.rar

posted on 2009-08-21 15:15 何杨 阅读(680) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: