点击查看大图
1.用的是Stedysoft的2k3Menu里的图片,css,及3个htc:2k3MenuBar.htc,2k3Menu.htc,2k3MenuRoot.htc2.需要修改的地方就是 将 2k3MenuRoot.htc 里的 <PUBLIC:property name="menu" value /> 修改为<PUBLIC:property name="subMenu" value />,然后将给htc有关menu的都改为subMenu;3.我修改的js脚本如下:var oMenubar;//Nodes.Add("R",4,"P3","Item0");//Add(null,0,"R","Root");/* 功能:添加菜单项 参数: parentItem: 上级节点的ID,如果为null,则为第一菜单项 level : 菜单级别。 0:第一条 1:最后条 2:下一条 3:上一条 4:子菜单 item : 菜单id itemName : 菜单名称example: 插入第一个菜单 addItem(null,0,"item1","我是第一个菜单"); */function addItem(parentItem,level,item,itemName,itemTitle,itemClick,imageSrc){ //添加MenuRoot if ((parentItem=="null")(level==0)){ //添加一个MenuBar oMenubar = document.all.item("_MenuBar").firstChild.firstChild; var oItem=oMenubar.insertCell(oMenubar.cells.length - 1); with (oItem){ id=item; Height="25"; noWrap=true; className="2k3MenuRoot"; //title=itemTitle; innerHTML="<div class=\"2k3MenuRootCaption\" >"+itemName+"</div>"; } } //添加子菜单 if ((parentItem!="null")(parentItem!="")){ if (level==4){ var oSubMenuItem="_SubMenu_"+parentItem; var oParentMenu=document.all.item(parentItem); //如果找不到父菜单 if (oParentMenu==null){ return; } var oSubMenu=document.all.item(oSubMenuItem);if (oSubMenu==null){ createMenu(oSubMenuItem); oSubMenu=document.all.item(oSubMenuItem); //return; document.all.item(parentItem).subMenu=oSubMenuItem;
} //不是MenuRoot,则添加箭头 if (oParentMenu.className!="2k3MenuRoot"){ oParentMenu.cells(oParentMenu.cells.length - 2).className="2k3MenuMore"; } //添加一行分割线 if (itemName=="-"){ var oRow=oSubMenu.tBodies(0).insertRow(); with (oRow){ className="2k3MenuSeperator"; var oCell=insertCell(); oCell.className="2k3MenuImage"; oCell.colSpan="2"; oCell=insertCell(); oCell.className="2k3MenuCaption"; oCell.colSpan="3"; oCell.innerHTML="<IMG>"; } }else if(itemName!=null){ var oRow=oSubMenu.tBodies(0).insertRow(); with (oRow){ className="2k3MenuItem"; id=item; title=itemTitle; var oCell=insertCell(); oCell.clsssName="2k3MenuVerticalSpacerLeft"; oCell=insertCell(); oCell.className="2k3MenuImage"; oCell.innerHTML="<img src="+imageSrc+" width=\"16\" height=\"16\">"; oCell=insertCell(); oCell.className="2k3MenuCaption"; oCell.innerText=itemName; oCell=insertCell(); oCell.className="2k3MenuNoMore"; oCell.innerText="4"; oCell=insertCell(); oCell.className="2k3MenuVerticalSpacerRight";
[1] [2] [3]
} } } } }
function createMenubar(){ var htmlstr="<table class=\"2k3MenuBar\" id=\"_MenuBar\" cellspacing=0 cellpadding=0 width=100% height=20>"; htmlstr+=" <tr>"; htmlstr+=" <td class=2k3MenuBarHandle></td>"; //htmlstr+=" <td class=\"2k3MenuRoot\" id=\"_mnuRoot1\" ><div class=\"2k3MenuRootCaption\">File</div></td>"; htmlstr+=" <td width=100%></td>"; htmlstr+=" </tr>"; htmlstr+="</table>"; document.write(htmlstr);}
function createMenu(item){ var htmlstr; htmlstr="<table class=\"2k3Menu\" id="+item+" cellspacing=\"0\" cellpadding=\"0\">"; htmlstr+=" <thead><tr><td colspan=\"5\"><div class=\"2k3MenuRootConnector\"></div></td></tr></thead>"; htmlstr+=" <tbody>"; htmlstr+=" </tbody>"; htmlstr+=" <tfoot><tr><td colspan=\"5\"></td></tr></tfoot>"; htmlstr+="</table>"; document.write(htmlstr);}
//document.onclick=function{// if event.//}
function doClick(){ var el=window.event.srcElement;
if (el.parentElement.className=="2k3MenuImage"){ el=el.parentElement.parentElement; }else if ((el.className=="2k3MenuVerticalSpacerLeft")(el.className=="2k3MenuCaption")(el.className=="2k3MenuNoMore")(el.className=="2k3MenuVerticalSpacerRight")){ el=el.parentElement; }else{ return } //alert(el.className); if ((el.className=="2k3MenuItem")(el.className=="2k3MenuItemOver")){ alert(el.id); }}5.举例应用。<Script language="javascript">createMenubar();addItem(null,0,"m_System","系统","系统设置",null,null);addItem("m_System",4,"m_SkinSetting","界面设置","根据自己的喜好来配置界面","demo()",null);addItem("m_SkinSetting",4,"m_SkinSetting1","界面设置1","根据自己的喜好来配置界面","demo()",null);addItem("m_SkinSetting",4,"m_SkinSetting2","界面设置2","根据自己的喜好来配置界面","demo()",null);addItem("m_SkinSetting",4,"m_SkinSetting3","界面设置3","根据自己的喜好来配置界面","demo()",null);addItem("m_System",4,"m_ChangePwd","修改密码","修改用户的登陆密码","demo()",null);addItem("m_System",4,"-","-","-","demo()",null);addItem("m_System",4,"m_ReLogin","重新登陆","更换其它用户名登录","demo()",null);addItem("m_System",4,"m_Exit","退出","退出系统","demo()",null);addItem("m_Exit",4,"m_Exit01","退出子菜单","退出系统","demo()",null);addItem("m_Exit",4,"m_Exit02","退出子菜单1","退出系统","demo()",null);</script>4.效果如图:[img]http://blog.csdn.net/images/blog_csdn_net/juwuyi/59408/t_StedyMenu_JoeCom.gif[/img]
(出处:http://www.sheup.com)
(出处:http://www.sheup.com)