1、将存为menu.htm格式文件 以下为代码内容: 复制代码 代码如下:<html> <head> <style> .menuskin { BORDER-RIGHT: #CBD7E9 1px solid; BORDER-TOP: #CBD7E9 1px solid; BACKGROUND-IMAGE: url(image/menubg.gif); VISIBILITY: hidden; FONT: 12px Tahoma, Verdana; BORDER-LEFT: #CBD7E9 1px solid; BORDER-BOTTOM: #CBD7E9 1px solid; POSITION: absolute; BACKGROUND-COLOR: #ffffff } .menuskin A { PADDING-RIGHT: 10px; PADDING-LEFT: 25px; COLOR: #3A4273; TEXT-DECORATION: none } #mouseoverstyle { BORDER-RIGHT: #597db5 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: #597db5 1px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 2px; BORDER-LEFT: #597db5 1px solid; PADDING-TOP: 0px; BORDER-BOTTOM: #597db5 1px solid; BACKGROUND-COLOR: #c9d5e7 } #mouseoverstyle A { COLOR: black } .menuitems { PADDING-RIGHT: 1px; PADDING-LEFT: 1px; PADDING-BOTTOM: 1px; MARGIN: 2px; WORD-BREAK: keep-all; PADDING-TOP: 1px } </style> <script type="text/javascript" src="menu.js"></script> </head> <body vlink='#333333' link='#333333'> <div class=menuskin id=popmenu onmouseover="clearhidemenu();highlightmenu(event,'on')" onmouseout="highlightmenu(event,'off');dynamichide(event)" style="Z-index:100"></div> <center> <a href="###" onMouseOver="showmenu(event,'<div class=menuitems><a href=http://www.gyct.cn/article/index.asp>网络文摘</a></div><div class=menuitems><a href=http://www.gyct.cn/article/index.asp>网络文摘</a></div>')"> 思客秀</a> </center> </body> </html>2、将下面代码存为menu.js文件,并与menu.htm放到同级目录下 复制代码 代码如下://Pop-it menu- By Dynamic Drive - Modified by Wbird //For full source code and more DHTML scripts, visit http://www.gyct.cn //This credit MUST stay intact for use var menuOffX=0 //菜单距连接文字最左端距离 var menuOffY=18 //菜单距连接文字顶端距离 var vBobjects = new Array(); var fo_shadows=new Array(); ////No need to edit beyond here var ie4=document.all&&navigator.userAgent.indexOf("Opera")==-1 var ns6=document.getElementById&&!document.all var ns4=document.layers function MM_findObj(n, d) { var p,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<d.forms.length;i++) x=d.forms[n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers.document); if(!x && d.getElementById) x=d.getElementById(n); return x; } function fetch_object(idname, forcefetch) { if (typeof(vBobjects[idname]) == "undefined") { vBobjects[idname] = MM_findObj(idname); } return vBobjects[idname]; } //showmenu vmenu:内容,允许为空,vmenuobj DIV数据ID,MOD 0=关闭浏览器自适应,用于版面导航菜单 function showmenu(e,vmenu,vmenuobj,mod){ if (!document.all&&!document.getElementById&&!document.layers) return var which=vmenu; if (vmenuobj) { var MenuObj = 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('<layer name=gui bgcolor="#E6E6E6" width="165" onmouseover="clearhidemenu()" onmouseout="hidemenu()">'+which+'</layer>') 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 var rightedge=ie4? document.body.clientWidth-eventX : window.innerWidth-eventX var bottomedge=ie4? document.body.clientHeight-eventY : window.innerHeight-eventY var getlength if (rightedge<menuobj.contentwidth){ getlength=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 (bottomedge<menuobj.contentheight&&mod!=0){ getlength=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) return false } function ie_y(e){ var t=e.offsetTop; while(e=e.offsetParent){ t+=e.offsetTop; } return t; } function ie_x(e){ var l=e.offsetLeft; while(e=e.offsetParent){ l+=e.offsetLeft; } return l; } function ie_dropshadow(el, color, size) { var i; for (i=size; i>0; i--) { var rect = document.createElement('div'); var rs = 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; var opacity = 1 - i / (i + 1); rs.filter = 'alpha(opacity=' + (100 * opacity) + ')'; //el.insertAdjacentElement('afterEnd', rect); fo_shadows[fo_shadows.length] = rect; } } function ie_clearshadow() { for(var i=0;i<fo_shadows.length;i++) { if (fo_shadows[i]) fo_shadows[i].style.display="none" } fo_shadows=new Array(); } function contains_ns6(a, b) { while (b.parentNode) if ((b = b.parentNode) == a) return true; return false; } function hidemenu(){ if (window.menuobj) menuobj.thestyle.visibility=(ie4||ns6)? "hidden" : "hide" ie_clearshadow() } function dynamichide(e){ if (ie4&&!menuobj.contains(e.toElement)) hidemenu() else if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget)) hidemenu() } function delayhidemenu(){ if (ie4||ns6||ns4) delayhide=setTimeout("hidemenu()",500) } function clearhidemenu(){ if (window.delayhide) clearTimeout(delayhide) } function highlightmenu(e,state){ if (document.all) source_el=event.srcElement else if (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=hidemenu3、在menu.htm目录下建立image目录,制作背景图片PS:事例效果: 以下为代码内容: <div class=menuskin id=popmenu onmouseover=clearhidemenu() onmouseout=dynamichide(event) style="z-index:100;"></div> <font color="#eeeeee"> <a href=### onMouseOver="showmenu(event,'<div class=menuitems id=site_menu><a href=/common/skins.asp?action=skin_1>简约时尚</a><br /><a href=/common/skins.asp?action=skin_2>魔兽世界</a><br /><a href=/common/skins.asp?action=cookies_clear alt=清除您在本站所留的Cookies信息>清除记录</a><br /></div>','site_menu')"><font color=#eeeeee>[选择皮肤]</font></a></font> jb51修正无错
.menuskin {
BORDER-RIGHT: #CBD7E9 1px solid; BORDER-TOP: #CBD7E9 1px solid; BACKGROUND-IMAGE: url(image/menubg.gif); VISIBILITY: hidden; FONT: 12px Tahoma, Verdana; BORDER-LEFT: #CBD7E9 1px solid; BORDER-BOTTOM: #CBD7E9 1px solid; POSITION: absolute; BACKGROUND-COLOR: #ffffff
}
.menuskin A {
PADDING-RIGHT: 10px; PADDING-LEFT: 25px; COLOR: #3A4273; TEXT-DECORATION: none
}
#mouseoverstyle {
BORDER-RIGHT: #597db5 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: #597db5 1px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 2px; BORDER-LEFT: #597db5 1px solid; PADDING-TOP: 0px; BORDER-BOTTOM: #597db5 1px solid; BACKGROUND-COLOR: #c9d5e7
}
#mouseoverstyle A {
COLOR: black
}
.menuitems {
PADDING-RIGHT: 1px; PADDING-LEFT: 1px; PADDING-BOTTOM: 1px; MARGIN: 2px; WORD-BREAK: keep-all; PADDING-TOP: 1px
}
网络编程asp')"> 脚本之家
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
推荐阅读
打印/预览/设置的客户端代码
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]>>>详细阅读
本文标题:仿DVBBS下拉菜单效果 jb51修正无错
地址:http://www.17bianji.com/kaifa2/JS/31617.html
1/2 1