快速制作微软风格下拉菜单

转载 2004年08月04日 23:02:00

本文转载自:http://www.5d.cn/rudolf/web/web-navi1-0.htm

网页制作中有一种技术,叫作源代码修改型,也就是将一些高手现成编制好的Javascript源代码进行一些修改,然后复制/粘贴到你的网页中。下文就是一个典型的例子。您甚至不需要知晓该语言,只要您知道一些HTML语言规范,就能快速创建自己又酷又炫的网页特效。

说起网页上的下拉菜单,最最经典的就是微软风格的下拉菜单。凡是去过www.microsoft.com网站的看官都对这个简洁明快的下拉菜单垂涎不已。然而无奈的是复杂的代码让人望而生畏,记得论坛上经常有人询问这种菜单怎么做。现在我们就来介绍这个菜单如何制作。我们使用smartmenu。它可以制作一个始终浮动在屏幕顶端的下拉菜单。

  源代码名称:Smart Menu (跨浏览器版)
  作者:Constantin Kuznetsov Jr. 
  类型:外部js文件
  效果:http://www.5dmedia.com/rudolf/web/web-navi1-0.htm
  制作方法:菜单源文件下载

  第一步:将下列代码复制到网页的<HEAD></ HEAD>标签之间。
  <style>
  <!--
  all.clsMenuItemNS{font: bold x-small Verdana; color: white; text-decoration: none;}
  .clsMenuItemIE{text-decoration: none; font: bold xx-small Verdana; color: white; cursor: hand;}
  A:hover {color: red;}
  -->
  </style>

  第二步: 将下面的代码复制到<body>标签的右边,位置紧挨着<body>标签 :
  <script language="JavaScript" src="menu.js">
  /*
  Static Top Menu Script
  By Constantin Kuznetsov Jr. (GoldenFox@bigfoot.com) 
  Featured on Dynamicdrive.com
  For full source code and installation instructions to this script, visit Dynamicdrive.com
  */
  </script>
  <script language="JavaScript" src="menucontext.js"></script>
  <script language="JavaScript">
  showToolbar();
  </script>
  <script language="JavaScript">
  function UpdateIt(){
  if (document.all){
  document.all["MainTable"].style.top = document.body.scrollTop;
  setTimeout("UpdateIt()", 200);
  }
  }
  UpdateIt();
  </script>

  第三步:添加菜单的内容。编辑menucontext.js文件,所有的菜单选项都在这里设置。默认的menucontext.js里面的内容,比较复杂我现在把代码精简出来。给大家做一个说明。整个代码如下:
  function showToolbar()
  {
  // AddItem(id, text, hint, location, alternativeLocation);
  // AddSubItem(idParent, text, hint, location); 
  //主菜单定义
  menu = new Menu();
  menu.addItem("multimedia", "多媒体", "多媒体软件", null, null);
  menu.addItem("image", "图像处理", "图像处理软件", null, null);

  //多媒体子菜单定义
  menu.addSubItem("multimedia", "Macromedia公司", "Macromedia公司", "http://www.macromedia.com");
  menu.addSubItem("multimedia", "5D多媒体", "5D多媒体", "http://www.5dmedia.com");

  //图像处理子菜单定义
  menu.addSubItem("image", "Adobe公司", "Adobe公司", "http://www.adobe.com");
  menu.addSubItem("image", "Corel公司", "Corel公司", "http://www.corel.com");
  menu.addSubItem("image", "Metacreation公司", "Metacreation公司", "http://www.metacreations.com");

  //结束菜单定义
  menu.showMenu();
  }

  上面的例子中制作的是一个有两个主菜单的菜单。一个主菜单为多媒体,一个主菜单为图像处理。主要靠两个命令来制作Additem为添加主菜单项目。格式为AddItem(菜单标记, 文本说明, 文本提示, 位置,替换位置)。AddSubItem为添加子菜单项目,idparent为主菜单的菜单标记,其余同前。

到这里还不算完。我们现在要继续完成菜单文件的上传和修改。

  第四步:上传菜单文件。
  将 menu.js和menucontext.js文件上传到和网页文件同一目录下。这样就完成了所有的操作。

  菜单安装的一些善后工作:
  安装了菜单之后如果需要将菜单完全和网页顶部和左边紧密结合。需要把<body>标签修改成为<body marginwidth="0" marginheight="0" leftmargin="0" topmargin="0">。
  或许大家也许会对菜单的文字感到不满意。可以把制作菜单第一步的CSS代码进行修改。比如<style>,将里面的字体大小换成了10.5磅这样的话中文字就简洁干净多了。
  <!--
  all.clsMenuItemNS{font-size: 10.5pt; color: white; text-decoration: none;}
  .clsMenuItemIE{text-decoration: none; font-size: 10.5pt; color: white; cursor: hand;}
  A:hover {color: red;}
  -->
  </style>

  同样如果对菜单的表格觉得不满意的话,可以修改menu.js文件中的代码例如:
  function Menu()
  {
  this.bgColor = "#008080";
  if (ie) this.menuFont = "bold xx-small Verdana";
  if (n) this.menuFont = "bold x-small Verdana";
  // this.fontColor = "white"; 
  this.addItem = addItem;
  this.addSubItem = addSubItem;
  this.showMenu = showMenu;
  this.mainPaneBorder = 0;
  this.subMenuPaneBorder = 0;
  }

  this.bgcolor修改的是菜单属性。
  this.mainPaneBorder修改的是主菜单的边框宽度
  this.subMenuPaneBorder 修改的是子菜单的边框宽度。
  修改完毕文件之后重新上传js文件即可。只要修改的好就可以把它发挥成为多种风格。

Android5.0 下拉通知栏快捷开关的添加(必看)

之前在开发的过程中修改了一些SystemUi相关的东西,今天就总结一下关于Android 5.0 下拉通知栏快捷按键的添加。 我们都知道,原生的Android5.0下拉菜单的图片是这样的:...
  • lyjIT
  • lyjIT
  • 2016年06月03日 16:42
  • 10233

Android仿微信下拉列表实现(附源码)

本文要实现微信6.1中点击顶部菜单栏的“+”号按钮时,会弹出一个列表框。这里用的了Activity实现,其实最好的方法可以用ActionBar,不过这货好像只支持3.0以后的版本。...
  • Evankaka
  • Evankaka
  • 2015年03月10日 20:44
  • 4982

Android下拉状态栏快捷开关的添加

最近基于工作需要,在Android5.0上研究了一下系统下拉状态栏的知识,并参考了“LYJ的IT生活”的http://blog.csdn.net/lyjit/article/details/51579...
  • LOVE000520
  • LOVE000520
  • 2016年08月12日 15:10
  • 2183

来自微软的纯CSS下拉菜单

结合JavaScript的下拉菜单,纯CSS的下拉菜单我也写过很多了。不过在微软 Microsoft Expression Web 的相关站点上看到这个纯CSS下拉菜单的时候,我还是觉得很赞赏。这应该...
  • xiaozhu2hao
  • xiaozhu2hao
  • 2015年01月22日 16:49
  • 262

来自微软的纯CSS下拉菜单

结合JavaScript的下拉菜单,纯CSS的下拉菜单我也写过很多了。不过在微软 Microsoft Expression Web 的相关站点上看到这个纯CSS下拉菜单的时候,我还是觉得很赞赏。这应该...
  • kuui_chiu
  • kuui_chiu
  • 2012年06月21日 13:39
  • 387

微软的纯CSS下拉菜单

结合JavaScript的下拉菜单,纯CSS的下拉菜单我也写过很多了。不过在微软 Microsoft Expression Web 的相关站点上看到这个纯CSS下拉菜单的时候,我还是觉得很赞赏。这应该...
  • oJiTaShan
  • oJiTaShan
  • 2013年04月11日 18:29
  • 388

来自微软的纯CSS下拉菜单

结合JavaScript的下拉菜单,纯CSS的下拉菜单我也写过很多了。不过在微软 Microsoft Expression Web 的相关站点上看到这个纯CSS下拉菜单的时候,我还是觉得很赞赏。这应该...
  • huanglan513
  • huanglan513
  • 2011年03月11日 15:24
  • 655

风格清新的CSS3折叠下拉菜单

  • 2013年05月15日 15:15
  • 12KB
  • 下载

可选风格下拉菜单

index.html --请选择-- 风格一 风格二 风格三 function chengestyle(){ result=docu...
  • Oo__YAN
  • Oo__YAN
  • 2011年11月23日 20:39
  • 731

创建与SharePoint 2010风格一致的下拉菜单

在笔者公司中,SharePoint得到了大规模的使用。最近,在IT托管的SharePoint 2010系统中,页面最上方被统一加上了一个额外的区域,右上角放置了两个额外的下拉菜单。 这两个下拉菜...
  • guojingDua
  • guojingDua
  • 2012年09月04日 13:56
  • 643
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:快速制作微软风格下拉菜单
举报原因:
原因补充:

(最多只允许输入30个字)