找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 1331|回复: 3

wwwfox大哥,我修改了个右键菜单,你放论坛试试,可能有所不足,你再改动:)

[复制链接]
发表于 2001-7-2 06:09:52 | 显示全部楼层 |阅读模式
[html]<HTML>
<HEAD>
  <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>
  <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");  
    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)
    {
      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,0);
        Temp = eval("E_"+Area);
        Temp.style.display="none";
        Temp = eval("P_"+Area);
        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("无忧启动\n一碟在手\n装机维护\n轻松搞定\n")}
  -->
  </script>
</HEAD>
<BODY oncontextmenu=window.event.returnValue=false>
<div id='snwcwt'> </div>
  <script language="JScript">
  <!--
  var menu = new RightMenu();
  menu.AddExtendMenu("location","我的链接","rbpm");
    menu.AddExtendMenu("lscit","无忧社区","location");
      menu.AddItem("scit_scit","无忧首页","lscit","http://www.wwwfox.net");
    menu.AddExtendMenu("stunet","无忧论坛","location");
      menu.AddItem("stu_wwwfox","超级灌水区","stunet","http://www.wwwfox.net/cgi-bin/forums.cgi?forum=1");
      menu.AddItem("stu_yaogun","摇滚天堂","stunet","http://www.wwwfox.net/cgi-bin/forums.cgi?forum=11");
      menu.AddItem("stu_qidong","无忧启动论坛","stunet","http://www.wwwfox.net/cgi-bin/forums.cgi?forum=2");
      menu.AddItem("stu_jingpin","精品教程论坛","stunet","http://www.wwwfox.net/cgi-bin/forums.cgi?forum=18");
      menu.AddItem("stu_rj","软件论坛","stunet","http://www.wwwfox.net/cgi-bin/forums.cgi?forum=8");
      menu.AddItem("stu_wy","网页制作","stunet","http://www.wwwfox.net/cgi-bin/forums.cgi?forum=13");
      menu.AddItem("stu_asp","asp编程论坛","stunet","http://www.wwwfox.net/cgi-bin/forums.cgi?forum=3");
      menu.AddItem("stu_cgi","CGI编程论坛","stunet","http://www.wwwfox.net/cgi-bin/forums.cgi?forum=15");
      menu.AddItem("stu_php","PHP编程论坛","stunet","http://www.wwwfox.net/cgi-bin/forums.cgi?forum=14");
      menu.AddItem("stu_shenqing","开版申请","stunet","http://www.wwwfox.net/cgi-bin/forums.cgi?forum=6");
      menu.AddItem("stu_jiaoliu","合作交流","stunet","http://www.wwwfox.net/cgi-bin/forums.cgi?forum=10");
      menu.AddItem("stu_xiazai","文件下载区","stunet","http://www.wwwfox.net/cgi-bin/forums.cgi?forum=17");
    menu.AddItem("sperator","","location",null);
  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("refresh","刷新","rbpm",null);
  menu.AddItem("sperator","","rbpm",null);
  menu.AddItem("author","<font style='color: #ff0000'>关于无忧</font>","rbpm",null);
  document.writeln(menu.GetMenu());
  //snwcwt.innerText=menu.GetMenu();
  -->
  </script>
</BODY>
</HTML>
[/html]
 楼主| 发表于 2001-7-2 06:16:54 | 显示全部楼层

wwwfox大哥,我修改了个右键菜单,你放论坛试试,可能有所不足,你再改动:)

又是一夜没睡,代码可能太长了,可能代码里有多余的代码,我还在学,有些不是很懂。哎……大哥,我在51空间放了个聊天室,哪知,下午把我的CGI给关了,连论坛也打不开,气死了,如果他们再帮我打开论坛以前的数据会不会丢失啊,要不要重装啊,我疏忽了没备份文件到本地,只保存了个用户数据下来,气坏了,呵呵。
对了,大哥,你要我转的那些帖我过两天再转,呵呵。该吃早饭去了,祝你今天好运:P
回复

使用道具 举报

发表于 2001-7-2 09:01:21 | 显示全部楼层

wwwfox大哥,我修改了个右键菜单,你放论坛试试,可能有所不足,你再改动:)

不是代码太长,而是空格问题,你还是没有记住我的话。
每行前后不能有空格,不然会出错!
回复

使用道具 举报

 楼主| 发表于 2001-7-2 19:29:04 | 显示全部楼层

wwwfox大哥,我修改了个右键菜单,你放论坛试试,可能有所不足,你再改动:)

我这可以运行啊,点右键看效果
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1|闽公网安备35020302032614号 )

GMT+8, 2026-8-5 02:05

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表