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 == null) return

node = document.getElementById("RssCate" + CateID)

node = node.nextSibling

while(node && node.tagName && node.tagName != "DIV")

{

node = node.nextSibling

}

if(node == null) return

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?&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

}

A {

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

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>