Ajax 另类二级联动菜单(DIV+CSS)

from:http://www.flywe.net/article.asp?id=39

 

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Flywe の Blog - Ajax 另类二级联动菜单(DIV+CSS)</TITLE>
<SCRIPT language=javascript>
    
var req = null;
      
if(window.XMLHttpRequest) {
          
try {
              req 
= new XMLHttpRequest();
          } 
catch(e) {
              req 
= false;
          }
      
// branch for IE/Windows ActiveX version
      } else if(window.ActiveXObject) {
          
try {
              req 
= new ActiveXObject("Msxml2.XMLHTTP");
          } 
catch(e) {
              
try {
                  req 
= new ActiveXObject("Microsoft.XMLHTTP");
              } 
catch(e) {
                  req 
= false;
              }
          }
      }
      
    
var node; 
    
function OnClickCate(What,CateID)
    {
      
if(What == nullreturn
      node 
= document.getElementById("RssCate" + CateID)
      node 
= node.nextSibling
      
while(node && node.tagName && node.tagName != "DIV")
      {
        node 
= node.nextSibling
      }
      
if(node == nullreturn
      
var initDisplay = node.style.display;
      
var RssDIV = document.getElementsByTagName("DIV");
      
if(RssDIV != null)
      {
        
for(var i = 0;i<RssDIV.length;i++)
        {
          
if(RssDIV[i].className == "RssDIV")
          RssDIV[i].style.display 
= "none";
         }
      }
      
if(document.getElementById("RssCate" + CateID).getAttribute("status"!= "ok")
      {
        
if(req)
        {
           
var str = null;
           node.innerHTML 
= "正在装载数据……";
           node.style.display
="block";
           surl 
='cs/menulist.asp?id='+CateID+'&cDate='+ new Date().getTime();
           req.open(
'GET', surl, true);
           req.onreadystatechange 
= alerttest;
           req.send(
null);
        }
        document.getElementById(
'RssCate'+CateID).setAttribute('status','ok');
      }
      
else
      {
        node.style.display
=(initDisplay == "block"?"none":"block");
      }
      
//node = null;
    }
function alerttest() 
{  
  
if (req.readyState == 4
   {
      
if (req.status == 200
       {
           node.innerHTML 
= req.responseText;
       } 
                                                
   }
}
    
</SCRIPT>

<STYLE type=text/css>.CateDIV {
    BORDER-RIGHT
: #808080 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: #ffffff 1px solid; PADDING-LEFT: 2px; FONT-SIZE: 9pt; PADDING-BOTTOM: 2px; BORDER-LEFT: #ffffff 1px solid; WIDTH: 300px; CURSOR: pointer; COLOR: #000000; PADDING-TOP: 3px; BORDER-BOTTOM: #808080 1px solid; HEIGHT: 22px; BACKGROUND-COLOR: #ddeeff; TEXT-ALIGN: left
}
.RssDIV 
{
    PADDING-RIGHT
: 2px; DISPLAY: none; PADDING-LEFT: 2px; FONT-SIZE: 9pt; PADDING-BOTTOM: 2px; PADDING-TOP: 2px; BACKGROUND-COLOR: transparent
}
{
    FONT-SIZE
: 9pt; COLOR: #000099; TEXT-DECORATION: none
}
A:visited 
{
    COLOR
: red
}
A:active 
{
    COLOR
: red
}
A:hover 
{
    COLOR
: #0000ff
}
</STYLE>

<META content="MSHTML 6.00.3790.1830" name=GENERATOR></HEAD>
<BODY 
style="BORDER-RIGHT: 0px; PADDING-RIGHT: 0px; BORDER-TOP: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; OVERFLOW: auto; BORDER-LEFT: 0px; PADDING-TOP: 0px; BORDER-BOTTOM: 0px" 
bgColor
=#ffffff>
<DIV class=CateDIV id=RssCate1 onclick=OnClickCate(this,1)>Microsoft .NET 
技术站点
</DIV>
<DIV class=RssDIV></DIV>
<DIV class=CateDIV id=RssCate2 onclick=OnClickCate(this,2)>ASP.NET 技术站点</DIV>
<DIV class=RssDIV></DIV>
<DIV class=CateDIV id=RssCate3 onclick=OnClickCate(this,3)>Visual C# 技术站点</DIV>
<DIV class=RssDIV></DIV>
<DIV class=CateDIV id=RssCate4 onclick=OnClickCate(this,4)>Visual Basic.NET 
技术站点
</DIV>
<DIV class=RssDIV></DIV></BODY></HTML> 

posted on 2008-11-13 20:39  鱼跃于渊  阅读(285)  评论(0编辑  收藏  举报

导航