在网上转的一个鼠标右键弹出菜单,挺好的,兼容性不知道。。。

<meta name="Microsoft Theme" content="none">
<meta name="keywords" content="" />
<meta name="description" content="" />
<style type="text/css">
body
{font-size: 9pt;}
table
{font-size: 9pt; cursor: default; margin: 0;}
tr
{height: 20;}
tr.over
{font-size: 9pt; color: #ffffff; background-color: #66aadd; cursor: default;}
tr.out
{font-size: 9pt; color: #ffffff; background-color: #004477; cursor: default;}
div.rm_div
{position: absolute; filter: Alpha(Opacity='95'); display: none; border: 2px outset #3377aa; background-color: #004477; width: 0; height: 0;}
hr.sperator
{border: 1px inset #3377aa;}
</style>
</head>
<body oncontextmenu="self.event.returnValue=false" link="#00FF00" vlink="#00FF00" alink="#00FF00">
<a href="<#ZC_BLOG_HOST#>">fgsdfgsdfg</a><hr>

<script language="JScript">
<!--
function RightMenu()
{
this.AddExtendMenu=AddExtendMenu;
this.AddItem=AddItem;
this.GetMenu=GetMenu;
this.HideAll=HideAll;
this.I_OnMouseOver=I_OnMouseOver;
this.I_OnMouseOut=I_OnMouseOut;
this.I_OnMouseUp=I_OnMouseUp;
this.P_OnMouseOver=P_OnMouseOver;
this.P_OnMouseOut=P_OnMouseOut;
A_rbpm
= new Array();
HTMLstr
= "";
HTMLstr
+= "<!-- RightButton PopMenu -->\n";
HTMLstr
+= "\n";
HTMLstr
+= "<!-- PopMenu Starts -->\n";
HTMLstr
+= "<div id='E_rbpm' class='rm_div'>\n";
// rbpm = right button pop menu
HTMLstr += "<table width='100%' border='0' cellspacing='0'>\n";
HTMLstr
+= "<!-- Insert A Extend Menu or Item On Here For E_rbpm -->\n";
HTMLstr
+= "</table>\n";
HTMLstr
+= "</div>\n";
HTMLstr
+= "<!-- Insert A Extend_Menu Area on Here For E_rbpm -->";
HTMLstr
+= "\n";
HTMLstr
+= "<!-- PopMenu Ends -->\n";
}
function AddExtendMenu(id,name,parent)
{
var TempStr = "";
if(HTMLstr.indexOf("<!-- Extend Menu Area : E_"+id+" -->") != -1)
{
alert(
"E_"+id+"already exist!");
return;
}
eval(
"A_"+parent+".length++");
eval(
"A_"+parent+"[A_"+parent+".length-1] = id"); // 将此项注册到父菜单项的ID数组中去
TempStr += "<!-- Extend Menu Area : E_"+id+" -->\n";
TempStr
+= "<div id='E_"+id+"' class='rm_div'>\n";
TempStr
+= "<table width='100%' border='0' cellspacing='0'>\n";
TempStr
+= "<!-- Insert A Extend Menu or Item On Here For E_"+id+" -->";
TempStr
+= "</table>\n";
TempStr
+= "</div>\n";
TempStr
+= "<!-- Insert A Extend_Menu Area on Here For E_"+id+" -->";
TempStr
+= "<!-- Insert A Extend_Menu Area on Here For E_"+parent+" -->";
HTMLstr
= HTMLstr.replace("<!-- Insert A Extend_Menu Area on Here For E_"+parent+" -->",TempStr);

eval(
"A_"+id+" = new Array()");
TempStr
= "";
TempStr
+= "<!-- Extend Item : P_"+id+" -->\n";
TempStr
+= "<tr id='P_"+id+"' class='out'";
TempStr
+= " onmouseover='P_OnMouseOver(\""+id+"\",\""+parent+"\")'";
TempStr
+= " onmouseout='P_OnMouseOut(\""+id+"\",\""+parent+"\")'";
TempStr
+= " onmouseup=window.event.cancelBubble=true;";
TempStr
+= " onclick=window.event.cancelBubble=true;";
TempStr
+= "><td nowrap>";
TempStr
+= " "+name+" </td><td style='font-family: webdings; text-align: right;'>4";
TempStr
+= "</td></tr>\n";
TempStr
+= "<!-- Insert A Extend Menu or Item On Here For E_"+parent+" -->";
HTMLstr
= HTMLstr.replace("<!-- Insert A Extend Menu or Item On Here For E_"+parent+" -->",TempStr);
}
function AddItem(id,name,parent,location)
{
var TempStr = "";
var ItemStr = "<!-- ITEM : I_"+id+" -->";
if(id == "sperator")
{
TempStr
+= ItemStr+"\n";
TempStr
+= "<tr style='height: 3;' class='out' onclick='window.event.cancelBubble=true;' onmouseup='window.event.cancelBubble=true;'><td colspan='2'><hr class='sperator'></td></tr>";
TempStr
+= "<!-- Insert A Extend Menu or Item On Here For E_"+parent+" -->";
HTMLstr
= HTMLstr.replace("<!-- Insert A Extend Menu or Item On Here For E_"+parent+" -->",TempStr);
return;
}
if(HTMLstr.indexOf(ItemStr) != -1)
{
alert(
"I_"+id+"already exist!");
return;
}
TempStr
+= ItemStr+"\n";
TempStr
+= "<tr id='I_"+id+"' class='out'";
TempStr
+= " onmouseover='I_OnMouseOver(\""+id+"\",\""+parent+"\")'";
TempStr
+= " onmouseout='I_OnMouseOut(\""+id+"\")'";
TempStr
+= " onclick='window.event.cancelBubble=true;'";
if(location == null)
TempStr
+= " onmouseup='I_OnMouseUp(\""+id+"\",\""+parent+"\",null)'";
else
TempStr
+= " onmouseup='I_OnMouseUp(\""+id+"\",\""+parent+"\",\""+location+"\")'";
TempStr
+= "><td nowrap>";
TempStr
+= " "+name+" ";
TempStr
+= "</td><td></td></tr>\n";
TempStr
+= "<!-- Insert A Extend Menu or Item On Here For E_"+parent+" -->";
HTMLstr
= HTMLstr.replace("<!-- Insert A Extend Menu or Item On Here For E_"+parent+" -->",TempStr);
}
function GetMenu()
{
return HTMLstr;
}
function I_OnMouseOver(id,parent)
{
var Item;
if(parent != "rbpm")
{
var ParentItem;
ParentItem
= eval("P_"+parent);
ParentItem.className
="over";
}
Item
= eval("I_"+id);
Item.className
="over";
HideAll(parent,
1);
}
function I_OnMouseOut(id)
{
var Item;
Item
= eval("I_"+id);
Item.className
="out";
}
function I_OnMouseUp(id,parent,location)
{
var ParentMenu;
window.event.cancelBubble
=true;
OnClick();
ParentMenu
= eval("E_"+parent);
ParentMenu.display
="none";
if(location == null)
eval(
"Do_"+id+"()");
else
window.open(location);
}
function P_OnMouseOver(id,parent)
{
var Item;
var Extend;
var Parent;
if(parent != "rbpm")
{
var ParentItem;
ParentItem
= eval("P_"+parent);
ParentItem.className
="over";
}
HideAll(parent,
1);
Item
= eval("P_"+id);
Extend
= eval("E_"+id);
Parent
= eval("E_"+parent);
Item.className
="over";
Extend.style.display
="block";
Extend.style.posLeft
=document.body.scrollLeft+Parent.offsetLeft+Parent.offsetWidth-4;
if(Extend.style.posLeft+Extend.offsetWidth > document.body.scrollLeft+document.body.clientWidth)
Extend.style.posLeft
=Extend.style.posLeft-Parent.offsetWidth-Extend.offsetWidth+8;
if(Extend.style.posLeft < 0) Extend.style.posLeft=document.body.scrollLeft+Parent.offsetLeft+Parent.offsetWidth;
Extend.style.posTop
=Parent.offsetTop+Item.offsetTop;
if(Extend.style.posTop+Extend.offsetHeight > document.body.scrollTop+document.body.clientHeight)
Extend.style.posTop
=document.body.scrollTop+document.body.clientHeight-Extend.offsetHeight;
if(Extend.style.posTop < 0) Extend.style.posTop=0;
}
function P_OnMouseOut(id,parent)
{
}
function HideAll(id,flag)
{
var Area;
var Temp;
var i;
if(!flag)
{
Temp
= eval("E_"+id);
Temp.style.display
="none";
}
Area
= eval("A_"+id);
if(Area.length)
{
for(i=0; i < Area.length; i++)
{
HideAll(Area[i],
0);
Temp
= eval("E_"+Area[i]);
Temp.style.display
="none";
Temp
= eval("P_"+Area[i]);
Temp.className
="out";
}
}
}

document.onmouseup
=OnMouseUp;
document.onclick
=OnClick;
function OnMouseUp()
{
if(window.event.button == 2)
{
var PopMenu;
PopMenu
= eval("E_rbpm");
HideAll(
"rbpm",0);
PopMenu.style.display
="block";
PopMenu.style.posLeft
=document.body.scrollLeft+window.event.clientX;
PopMenu.style.posTop
=document.body.scrollTop+window.event.clientY;
if(PopMenu.style.posLeft+PopMenu.offsetWidth > document.body.scrollLeft+document.body.clientWidth)
PopMenu.style.posLeft
=document.body.scrollLeft+document.body.clientWidth-PopMenu.offsetWidth;
if(PopMenu.style.posLeft < 0) PopMenu.style.posLeft=0;
if(PopMenu.style.posTop+PopMenu.offsetHeight > document.body.scrollTop+document.body.clientHeight)
PopMenu.style.posTop
=document.body.scrollTop+document.body.clientHeight-PopMenu.offsetHeight;
if(PopMenu.style.posTop < 0) PopMenu.style.posTop=0;
}
}
function OnClick()
{
HideAll(
"rbpm",0);
}
// Add Your Function on following
function Do_viewcode(){window.location="view-source:"+window.location.href;}
function Do_help(){window.showHelp(window.location);}
function Do_exit() {window.close();}
function Do_refresh() {window.location.reload();}
function Do_back() {history.back();}
function Do_forward() {history.forward();}
function Do_author(){alert("网名:sky\nE_mail:zzjs@msn.com,站长特效网逐渐强大中\n")}
-->
</script>
<div id="snwcwt">
</div><script language="JScript">
<!--
var menu = new RightMenu();
menu.AddExtendMenu(
"location","我的链接","rbpm");
menu.AddExtendMenu(
"stunet","个人收藏","location");
menu.AddItem(
"stu_nith","第九城市","stunet","http://www.the9.com/");
menu.AddItem(
"stu_kingdom","超凡国度","stunet","<#ZC_BLOG_HOST#>?cat=11");
menu.AddItem(
"sperator","","stunet",null);
menu.AddItem(
"stu_kaxiu","站长特效网","stunet","<#ZC_BLOG_HOST#>?cat=12");
menu.AddItem(
"stu_qiao","七巧FLASH","stunet","<#ZC_BLOG_HOST#>?cat=10");
menu.AddItem(
"sperator","","stunet",null);
menu.AddItem(
"stu_paper","壁纸千寻","stunet","<#ZC_BLOG_HOST#>?cat=9");
menu.AddItem(
"stu_lauge","站长特效网","stunet","http://zzjs.net/");
menu.AddItem(
"sperator","","location",null);
menu.AddExtendMenu(
"computer","电脑类网站","location");
menu.AddExtendMenu(
"C_all","综合性网站","computer");
menu.AddItem(
"ca_yesky","天极网","C_all","<#ZC_BLOG_HOST#>?cat=2");
menu.AddExtendMenu(
"C_program","程序员网站","computer");
menu.AddItem(
"cp_program","java2000","C_program","<#ZC_BLOG_HOST#>?cat=3");
menu.AddExtendMenu(
"C_magzine","杂志网站","computer");
menu.AddItem(
"cm_cpcw","电脑报","C_magzine","<#ZC_BLOG_HOST#>?cat=4");
menu.AddItem(
"cm_cfan","电脑爱好者","C_magzine","<#ZC_BLOG_HOST#>?cat=5");
menu.AddItem(
"cm_popsoft","大众软件","C_magzine","<#ZC_BLOG_HOST#>?cat=6");
menu.AddExtendMenu(
"C_luntan","脚本论坛","computer");
menu.AddItem(
"cl_js","无优脚本","C_luntan","<#ZC_BLOG_HOST#>?cat=7");
menu.AddExtendMenu(
"C_book","软件下载","computer");
menu.AddItem(
"cb_soft","软件屋","C_book","<#ZC_BLOG_HOST#>?cat=8");
menu.AddExtendMenu(
"hacker","黑客网站","location");
menu.AddItem(
"hk_honker","红客联盟","hacker","<#ZC_BLOG_HOST#>?cat=9");
menu.AddItem(
"hk_hacker","黑白网络","hacker","<#ZC_BLOG_HOST#>?cat=10");
menu.AddItem(
"hk_QQ","QQ大联盟","hacker","<#ZC_BLOG_HOST#>?cat=11");
menu.AddItem(
"sperator","","location",null);
menu.AddExtendMenu(
"lmovie","影视天地","location");
menu.AddItem(
"mov_wcums","华西网上影院","lmovie","<#ZC_BLOG_HOST#>?cat=13");
menu.AddExtendMenu(
"lmusic","音乐空间","location");
menu.AddItem(
"mus_tyfo","天虎音乐网","lmusic","<#ZC_BLOG_HOST#>?cat=5");
menu.AddItem(
"mus_langqin","浪琴音乐","lmusic","<#ZC_BLOG_HOST#>?cat=4");
menu.AddItem(
"mus_sogua","搜刮音乐网","lmusic","<#ZC_BLOG_HOST#>?cat=3");
menu.AddExtendMenu(
"lmud","游戏链接","location");
menu.AddExtendMenu(
"uo","UO专题","lmud");
menu.AddItem(
"lmud_chinauo","ChinaUO","uo","<#ZC_BLOG_HOST#>?cat=2");
menu.AddItem(
"lmud_uochina","UO中华网","uo","<#ZC_BLOG_HOST#>?cat=2");
menu.AddItem(
"lmud_uohome","创世纪家园","uo","<#ZC_BLOG_HOST#>?cat=2");
menu.AddExtendMenu(
"game","电脑游戏","lmud");
menu.AddItem(
"lmud_he","游戏家园","game","<#ZC_BLOG_HOST#>?cat=11");
menu.AddItem(
"lmud_people","游民部落","game","<#ZC_BLOG_HOST#>?cat=10");
menu.AddItem(
"lmud_gamecn","中国游戏联盟","game","<#ZC_BLOG_HOST#>?cat=8");
menu.AddItem(
"sperator","","location",null);
menu.AddExtendMenu(
"lemail","电子邮局","location");
menu.AddItem(
"email_263","21cn免费电子邮局","lemail","<#ZC_BLOG_HOST#>?cat=2");
menu.AddExtendMenu(
"collections","综合性网站","location");
menu.AddItem(
"coll_china","中华网","collections","<#ZC_BLOG_HOST#>?cat=4");
menu.AddItem(
"coll_sina","新浪首页","collections","<#ZC_BLOG_HOST#>?cat=5");
menu.AddItem(
"coll_263","263首都在线","collections","<#ZC_BLOG_HOST#>?cat=1");
menu.AddExtendMenu(
"leave","离开","rbpm");
menu.AddItem(
"forward","前进","leave",null);
menu.AddItem(
"back","后退","leave",null);
menu.AddItem(
"sperator","","leave",null);
menu.AddItem(
"exit","退出","leave",null);
menu.AddItem(
"viewcode","查看源代码","rbpm",null);
menu.AddItem(
"refresh","刷新","rbpm",null);
menu.AddItem(
"sperator","","rbpm",null);
menu.AddItem(
"help","帮助","rbpm",null);
menu.AddItem(
"sperator","","rbpm",null);
menu.AddItem(
"author","关于作者","rbpm",null);
document.writeln(menu.GetMenu());
//snwcwt.innerText=menu.GetMenu();
-->
</script>

原文地址:https://www.cnblogs.com/pipizhu/p/1782793.html