📄 menu.js
字号:
//Pop-it menu- By Dynamic Drive
//For full source code and more DHTML scripts, visit http://www.dynamicdrive.com
//This credit MUST stay intact for use
var linkset=new Array()
//SPECIFY MENU SETS AND THEIR LINKS. FOLLOW SYNTAX LAID OUT
linkset[0]='<div class="menuitems"><a href="javascript:insertTable()">添 加</a></div>'
linkset[0]+='<div class="menuitems"><a href="javascript:deleteRow()">删 除</a></div>'
////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 byTag(e,tagName)
{
while ( e && e.tagName != tagName) e = e.parentElement; return e;
}
function showmenu(e,which,index){
var parentTab = byTag(e,"TABLE");
// alert("parentTab:"+parentTab);
var tabID = parentTab.id;
// alert("tabID:"+tabID);
if(!parentTab)return;
if (!document.all&&!document.getElementById&&!document.layers)
return clearhidemenu()
linkset[0]='<div class="menuitems"><a href="javascript:insertTable(\''+parentTab+'\','+index+')">添 加</a></div>'
linkset[0]+='<div class="menuitems"><a href="javascript:deleteRow()">删 除</a></div>'
// alert("linkset[0]:"+linkset[0]);
if(index==1){
menuobj=ie4? document.all.popmenu1 : ns6? document.getElementById("popmenu1") : ns4? document.popmenu1 : "" ;
}
if(index==2){
menuobj=ie4? document.all.popmenu2 : ns6? document.getElementById("popmenu2") : ns4? document.popmenu2 : "" ;
}
if(index==3){
menuobj=ie4? document.all.popmenu3 : ns6? document.getElementById("popmenu3") : ns4? document.popmenu3 : "" ;
}
if(index==4){
menuobj=ie4? document.all.popmenu4 : ns6? document.getElementById("popmenu4") : ns4? document.popmenu4 : "" ;
}
if(index==5){
menuobj=ie4? document.all.popmenu5 : ns6? document.getElementById("popmenu5") : ns4? document.popmenu5 : "" ;
}
if(index==6){
menuobj=ie4? document.all.popmenu6 : ns6? document.getElementById("popmenu6") : ns4? document.popmenu6 : "" ;
}
//menuobj=ie4? document.all.parentTab : ns6? document.getElementById(tabID) : ns4? document.parentTab : ""
// alert("menuobj:"+menuobj);
menuobj.thestyle=(ie4||ns6)? menuobj.style : menuobj
if (ie4||ns6)
menuobj.innerHTML=which
else{
menuobj.document.write('<layer name=gui bgColor=#E6E6E6 width=80 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
//Find out how close the mouse is to the corner of the window
var rightedge=ie4? document.body.clientWidth-eventX : window.innerWidth-eventX
var bottomedge=ie4? document.body.clientHeight-eventY : window.innerHeight-eventY
//if the horizontal distance isn't enough to accomodate the width of the context menu
if (rightedge<menuobj.contentwidth)
//move the horizontal position of the menu to the left by it's width
menuobj.thestyle.left=ie4? document.body.scrollLeft+eventX-menuobj.contentwidth : ns6? window.pageXOffset+eventX-menuobj.contentwidth : eventX-menuobj.contentwidth
else
//position the horizontal position of the menu where the mouse was clicked
menuobj.thestyle.left=ie4? document.body.scrollLeft+eventX : ns6? window.pageXOffset+eventX : eventX
//same concept with the vertical position
if (bottomedge<menuobj.contentheight)
menuobj.thestyle.top=ie4? document.body.scrollTop+eventY-menuobj.contentheight : ns6? window.pageYOffset+eventY-menuobj.contentheight : eventY-menuobj.contentheight
else
menuobj.thestyle.top=ie4? document.body.scrollTop+event.clientY : ns6? window.pageYOffset+eventY : eventY
menuobj.thestyle.visibility="visible"
return false
}
function contains_ns6(a, b) {
//Determines if 1 element in contained in another- by Brainjar.com
while (b.parentNode)
if ((b = b.parentNode) == a)
return true;
return false;
}
function hidemenu(){
if (window.menuobj)
menuobj.thestyle.visibility=(ie4||ns6)? "hidden" : "hide"
}
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
//alert("source_el:"+source_el);
if (source_el.className=="menuitems"){
//alert("1");
source_el.id=(state=="on")? "mouseoverstyle" : ""
//alert("2");
}
else{
//alert("3");
//alert("source_el.id:"+source_el.id);
while(source_el.id!="popmenu1"&&source_el.id!="popmenu2"&&source_el.id!="popmenu3"&&source_el.id!="popmenu4"&&source_el.id!="popmenu5"&&source_el.id!="popmenu6"){
//alert("4");
source_el=document.getElementById? source_el.parentNode : source_el.parentElement
//alert("5");
if (source_el.className=="menuitems"){
source_el.id=(state=="on")? "mouseoverstyle" : ""
}
}
}
//alert("source_el.id:"+source_el.id);
}
if (ie4||ns6)
document.onclick=hidemenu
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -