<script language="JavaScript" type="text/JavaScript">
//首先定义两个数组,一个是菜单文字,一个是链接
var MenuText = new Array(3);
var MenuEven = new Array(3);
MenuText[1] = ["菜单41","菜单42啊","菜单43","菜单41","菜单42","菜单43","菜单41","菜单42","菜单43"];
MenuText[2] = ["菜单51","菜单52"];
MenuText[3] = ["菜单61","菜单62","菜单63"];
MenuEven[1] = ["url11","url12","url13"];
MenuEven[2] = ["url21","url22"];
MenuEven[3] = ["url31","url32","url33"];
//初始化一个oPopup对象
var oPopup = window.createPopup();
//这两个是获得表格绝对位置的方法,很有用的说
function getLeftIE(x,m) {
//dx是来定位下拉导航的左右位置
var dx=5;
if (x.tagName=="TD"){
dx=x.offsetLeft;
}
else if (x.tagName=="TABLE") {
dx=x.offsetLeft;
if (m) { dx+=(x.cellPadding!=""?parseInt(x.cellPadding):2); m=false; }
}
return dx+(x.parentElement.tagName=="BODY"?0:getLeftIE(x.parentElement,m));
}
function getTopIE(x,m) {
//dy是来定位下拉导航的上下位置
var dy=10;
if (x.tagName=="TR"){
dy=x.offsetTop;
}
else if (x.tagName=="TABLE") {
dy=x.offsetTop;
if (m) { dy+=(x.cellPadding!=""?parseInt(x.cellPadding):2); m=false; }
}
return dy+(x.parentElement.tagName=="BODY"?0:getTopIE(x.parentElement,m));
}
//显示菜单
function ButtonClick(node,t)
{
//首先得到鼠标所在的表格的位置
var left = getLeftIE(node,true)-8;
var top = getTopIE(node,true);
//定义打开的oPopup的宽度,高度
var width = 100;
var height = MenuText[t].length*20;
//清空oPopup的内容,否则每次调用都只会在后面接着写
oPopup.document.body.innerHTML = "";
var oPopBody = oPopup.document.body;
oPopup.show(left,top, width, height, document.body);
oPopup.document.open;
//让oPopup在鼠标离开时自动隐藏。
oPopup.document.write("<body leftmargin=0 topmargin=0 scroll=no style='border : 0 px;' οnmοuseοver=clearTimeout(parent.popt); οnmοuseοut=parent.popt=setTimeout('parent.oPopup.hide()',10);>");
//用document.write()写菜单内容
oPopup.document.write("<table width=100% height=100% style='border-collapse : collapse;'>");
for(var i=0;i<MenuText[t].length;i++)
{
oPopup.document.write("<tr><td background='image/topbg.gif' bgcolor=#F3F8FC style='border-top : #F3F8FC 1px solid;border-bottom : #4A95DF 1px solid;border-left : #cccccc 1px solid;border-right : #4A95DF 1px solid;mouse : hand; font-size : 12px; color:#000000;text-align : left;vertical-align : center;CURSOR: hand' οnmοuseοver=this.bgColor='#C2D2E5'; οnmοuseοut=this.bgColor='#F3F8FC'; height='20' οnclick='parent.parent.main.location.href=/""+MenuEven[t][i]+"/"';>"+MenuText[t][i]+"</td></tr>");
}
oPopup.document.write("</table></td></tr></table>");
oPopup.document.write("</body>")
}
</SCRIPT>
<html>
<head>
<link href="css/wz.css" rel="stylesheet" type="text/css">
</head>
<body>
<table border="0" cellpadding="0" cellspacing="1" bgcolor="EEE8DD" class="wz">
<tr align="center" bgcolor="4A95DF">
<td width="100" height="20" onMouseOver="ButtonClick(this,1)"><font color="#FFFFFF"><strong>菜单1</strong></font></td>
<td width="100" onMouseOver="ButtonClick(this,2)"><font color="#FFFFFF"><strong>菜单2</strong></font></td>
<td width="100" onMouseOver="ButtonClick(this,3)"><font color="#FFFFFF"><strong>菜单3</strong></font></td>
</tr>
</table>
</body>
</html>
此页在此说明几点,
第一.在javascript做输出的导航是个窗体,他是当前窗口的子窗口.
第二.在红色字体的地方要特别的注意!红色加粗时更要注意,如果在这里写成自己的javascript,如果要在本页面调用的话,要这样用window.parent.function()这样来用!!!原因上面说了!