onmouseover="movese('进入蓝丽技术论坛|-|网页版面美工设计|网页前台脚本编程|网页后台脚本编程|xml与net时代编程|软件开发交流论坛|讨论区及其他学术|-|会员登陆注册入口','bbs/||bbs/page.asp?dex=网页版面美工设计|bbs/page.asp?dex=网页前台脚本编程|bbs/page.asp?dex=网页后台脚本编程|bbs/page.asp?dex=xml与net时代编程|bbs/page.asp?dex=软件开发交流论坛|bbs/page.asp?dex=讨论区及其他学术||bbs/olduser.asp')"
goto='bbs/'>技术论坛
</td></tr></table>
<!--基本导航栏html构造结束,以下开始着手编写构造movese等等菜单显示,定位,消失的脚本-->
<script>
var cleartime=1
function movese(menustr,menuhref){ //一级菜单的显示函数,menustr=菜单要显示的文本,menuhref=菜单文本对应的网址
happydiv.style.display=''; //首先显示的一级菜单
happydiv2.style.display='none'; //其次将以显示的二级菜单关闭
if(cleartime!=1)cleartimeout(cleartime) //触发此函数通常是在mouseover时,因此取消"定时关闭菜单"的定时器
happydiv.style.posleft=menutd.offsetleft+event.srcelement.offsetleft; //一级菜单绝对位置"左"定位
happydiv.style.postop=menutd.offsettop+menutd.offsetheight //一级菜单绝对位置"上"定位
for(i=0;happydiv.rows.length;i++)happydiv.deleterow() //清除菜单中以有的td表格数据
str1=menustr.split('|');str2=menuhref.split('|') //将menustr以"|"号分割为数组
for(i=0;i<str1.length;i++){ //循环显示数据数据开始
tdstr=happydiv.insertrow().insertcell() //首先在一级菜单中查入一个<tr><td></td></tr>
if(str1[i].indexof('**')==-1){ //如果是不构成显示二级菜单的数据,以**做判断
if(str1[i]!="-")tdstr.innerhtml="<a href='"+str2[i]+"'>"+str1[i]+"</a>";else tdstr.innerhtml="<hr size=1 color=#8bb4d9>"
}else{ //如果是能构成二级菜单的数据则...
str3=str1[i].split('**') //开始构件二级菜单驱动的显示字符
tdstr.innerhtml="<font onmouseover=movese2('"+str1[i]+"','"+str2[i].replace(/</g,"lshdicstr1").replace(/ /g,"lshdicstr2").replace(/>/g,"lshdicstr3")+"')>"+str3[0]+" →</font>" //moveover时调用二级菜单显示函数movese2,replace是将指定网址中的特殊字符替换为预定字符
}}
cleartime=settimeout('happydiv.style.display="none";happydiv2.style.display="none"',2000) //一切完毕后加上定时关闭菜单,可选
}
function movese2(menustr2,menuhref2){ //二级菜单的显示函数,menustr2=菜单要显示的文本,menuhref=菜单文本对应的网址
happydiv2.style.display=''; //第一步自然是先显示二级菜单的容器表格
if(cleartime!=1)cleartimeout(cleartime) //第二步自然是清除定时器关闭的设置
happydiv2.style.posleft=happydiv.offsetleft+happydiv.offsetwidth; //二级菜单定位"左"
temptop1=event.srcelement.parentelement.parentelement
happydiv2.style.postop=happydiv.offsettop+(temptop1.offsetheight*temptop1.rowindex) //二级菜单定位"上",根据一级菜单中单个td的高度*第几个计算
for(i=0;happydiv2.rows.length;i++)happydiv2.deleterow() //定位完毕,开始显示数据,首先要清除以显示的td
str3=menustr2.split('**');str4=menuhref2.split('**') //然后分解构成二级菜单的数据
for(i=1;i<str3.length;i++){ //按照数组的大小循环生成单个td
tdstr2=happydiv2.insertrow().insertcell() //在二级菜单中插入<tr><td></td></tr>
tdstr2.innerhtml="<a href='"+str4[i].replace(/lshdicstr1/g,'<').replace(/lshdicstr2/g,' ').replace(/lshdicstr3/g,'>')+"'>"+str3[i]+"</a>" //设定具体显示的数据,replace将预定字符替换过来
}
cleartime=settimeout('happydiv.style.display="none";happydiv2.style.display="none"',2000) //一切完毕后加上定时关闭菜单,可选
}
function over1(){ //一,二级菜单中moveover事件时使用本函数定义菜单效果
if(event.srcelement.tagname=="td"){event.srcelement.bgcolor='eeeeee';event.srcelement.style.bordertop='1 solid';
event.srcelement.style.borderbottom='1 solid'}else if(event.srcelement.tagname=="font"||event.srcelement.tagname=="a"){
event.srcelement.parentelement.bgcolor='eeeeee';event.srcelement.parentelement.style.bordertop='1 solid';
event.srcelement.parentelement.style.borderbottom='1 solid'}
}
function out1(){ //一,二级菜单中moveout事件时使用本函数定义菜单效果