欢迎来到福编程网,本站提供各种互联网专业知识!

仿DVBBS下拉菜单效果 jb51修正无错

发布时间:2006-08-17 作者: 来源:转载
1、将存为menu.htm格式文件以下为代码内容:复制代码代码如下:.menuskin{BORDER-RIGHT:#CBD7E91pxsolid;BORDER-TOP:#CBD7E91pxsolid;BACKGROUND-IMAGE:url(image/menubg.gif);VISIBILITY:hidden;FONT:12pxTahoma,Verdana;BORDER-LEFT:#CBD7E91pxsolid;BORDER-
1、将存为menu.htm格式文件以下为代码内容:
复制代码 代码如下:








网络文摘

网络文摘
')">思客秀





2、将下面代码存为menu.js文件,并与menu.htm放到同级目录下
复制代码 代码如下:
//Pop-itmenu-ByDynamicDrive-ModifiedbyWbird
//ForfullsourcecodeandmoreDHTMLscripts,visithttp://www.gyct.cn
//ThiscreditMUSTstayintactforuse
varmenuOffX=0//菜单距连接文字最左端距离
varmenuOffY=18//菜单距连接文字顶端距离
varvBobjects=newArray();
varfo_shadows=newArray();
////Noneedtoeditbeyondhere
varie4=document.all&&navigator.userAgent.indexOf("Opera")==-1
varns6=document.getElementById&&!document.all
varns4=document.layers

functionMM_findObj(n,d){
varp,i,x;if(!d)d=document;if((p=n.indexOf("?"))>0&&parent.frames.length){
d=parent.frames[n.substring(p+1)].document;n=n.substring(0,p);}

if(!(x=d[n])&&d.all)x=d.all[n];for(i=0;!x&&i

for(i=0;!x&&d.layers&&i

if(!x&&d.getElementById)x=d.getElementById(n);returnx;

}

functionfetch_object(idname,forcefetch)
{
if(typeof(vBobjects[idname])=="undefined")
{
vBobjects[idname]=MM_findObj(idname);
}
returnvBobjects[idname];
}
//showmenuvmenu:内容,允许为空,vmenuobjDIV数据ID,MOD0=关闭浏览器自适应,用于版面导航菜单
functionshowmenu(e,vmenu,vmenuobj,mod){
if(!document.all&&!document.getElementById&&!document.layers)
return
varwhich=vmenu;
if(vmenuobj)
{
varMenuObj=fetch_object(vmenuobj);
if(MenuObj)
{
which=MenuObj.innerHTML;
}
}
if(!which)
{
return
}
clearhidemenu();
ie_clearshadow();
menuobj=ie4?document.all.popmenu:ns6?document.getElementById("popmenu"):ns4?document.popmenu:""
menuobj.thestyle=(ie4||ns6)?menuobj.style:menuobj
if(ie4||ns6)
menuobj.innerHTML=which
else{
menuobj.document.write(''+which+'')
menuobj.document.close()
}
menuobj.contentwidth=(ie4||ns6)?menuobj.offsetWidth:menuobj.document.gui.document.width
menuobj.contentheight=(ie4||ns6)?menuobj.offsetHeight:menuobj.document.gui.document.height
eventX=ie4?event.clientX:ns6?e.clientX:e.x
eventY=ie4?event.clientY:ns6?e.clientY:e.y
varrightedge=ie4?document.body.clientWidth-eventX:window.innerWidth-eventX
varbottomedge=ie4?document.body.clientHeight-eventY:window.innerHeight-eventY
vargetlength
if(rightedgegetlength=ie4?document.body.scrollLeft+eventX-menuobj.contentwidth+menuOffX:ns6?window.pageXOffset+eventX-menuobj.contentwidth:eventX-menuobj.contentwidth
}else{
getlength=ie4?ie_x(event.srcElement)+menuOffX:ns6?window.pageXOffset+eventX:eventX
}
menuobj.thestyle.left=getlength+'px'
if(bottomedgegetlength=ie4?document.body.scrollTop+eventY-menuobj.contentheight-event.offsetY+menuOffY-23:ns6?window.pageYOffset+eventY-menuobj.contentheight-10:eventY-menuobj.contentheight
}else{
getlength=ie4?ie_y(event.srcElement)+menuOffY:ns6?window.pageYOffset+eventY+10:eventY
}
menuobj.thestyle.top=getlength+'px'
menuobj.thestyle.visibility="visible"
ie_dropshadow(menuobj,"#999999",3)
returnfalse
}

functionie_y(e){
vart=e.offsetTop;
while(e=e.offsetParent){
t+=e.offsetTop;
}
returnt;
}
functionie_x(e){
varl=e.offsetLeft;
while(e=e.offsetParent){
l+=e.offsetLeft;
}
returnl;
}
functionie_dropshadow(el,color,size)
{
vari;
for(i=size;i>0;i--)
{
varrect=document.createElement('div');
varrs=rect.style
rs.position='absolute';
rs.left=(el.style.posLeft+i)+'px';
rs.top=(el.style.posTop+i)+'px';
rs.width=el.offsetWidth+'px';
rs.height=el.offsetHeight+'px';
rs.zIndex=el.style.zIndex-i;
rs.backgroundColor=color;
varopacity=1-i/(i+1);
rs.filter='alpha(opacity='+(100*opacity)+')';
//el.insertAdjacentElement('afterEnd',rect);
fo_shadows[fo_shadows.length]=rect;
}
}
functionie_clearshadow()
{
for(vari=0;i{
if(fo_shadows[i])
fo_shadows[i].style.display="none"
}
fo_shadows=newArray();
}
functioncontains_ns6(a,b){
while(b.parentNode)
if((b=b.parentNode)==a)
returntrue;
returnfalse;
}

functionhidemenu(){
if(window.menuobj)
menuobj.thestyle.visibility=(ie4||ns6)?"hidden":"hide"
ie_clearshadow()
}

functiondynamichide(e){
if(ie4&&!menuobj.contains(e.toElement))
hidemenu()
elseif(ns6&&e.currentTarget!=e.relatedTarget&&!contains_ns6(e.currentTarget,e.relatedTarget))
hidemenu()
}

functiondelayhidemenu(){
if(ie4||ns6||ns4)
delayhide=setTimeout("hidemenu()",500)
}

functionclearhidemenu(){
if(window.delayhide)
clearTimeout(delayhide)
}
functionhighlightmenu(e,state){
if(document.all)
source_el=event.srcElement
elseif(document.getElementById)
source_el=e.target
if(source_el.className=="menuitems"){
source_el.id=(state=="on")?"mouseoverstyle":""
}
else{
while(source_el.id!="popmenu"){
source_el=document.getElementById?source_el.parentNode:source_el.parentElement
if(source_el.className=="menuitems"){
source_el.id=(state=="on")?"mouseoverstyle":""
}
}
}
}

if(ie4||ns6)
document.onclick=hidemenu

3、在menu.htm目录下建立image目录,制作背景图片
PS:事例效果:
以下为代码内容:

简约时尚

魔兽世界

清除记录

','site_menu')">[选择皮肤]
jb51修正无错

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

相关推荐