制作更方便的下拉菜单

由于JavaScript和VBScript脚本语言及CSS的日益流行,Interent上各大网站纷纷采用这些技术,使自己的站点变得更加活跃,更具交互性和趣味性。尤其是微软主页上的那种下拉菜单,曾经让我感到不可思议,简单的网页竟能呈现出类似应用程序般的界面,让我羡慕不已。经过研究,我发现此类菜单的编制并不复杂,下面,我就把我编制的下拉菜单介绍给大家。

  首先,我们先要定义几个类(仔细看哟,这里可是影响外观效果的关键部位):

 

< TEXTAREA  style ="WIDTH: 447px; HEIGHT: 186px"  rows =12  cols =60 >
< STYLE >
  .over
{ background-color : #cccccc ;
  //这里定义菜单项鼠标OVER时的效果;
  border-top
: #ffffff 1px solid ;  //上边的属性
  border-bottom
: #000000 1px solid ; //下边的属性
  border-left
: #ffffff 1px solid ;  //左边的属性
  border-right
: #000000 1px solid }  //右边的属性
  .out
{ background-color : #cccccc ;
  //这里定义菜单项一般状态;
  border-top
: #cccccc 1px solid ;
  border-bottom
: #cccccc 1px solid ;
  border-left
: #cccccc 1px solid ;
  border-right
: #cccccc 1px solid }
  .down
{ background-color : #cccccc ;
  //这里定义菜单项鼠标左键点击时的效果;
  border-top
: #000000 1px solid ;
  border-bottom
: #ffffff 1px solid ;
  border-left
: #000000 1px solid ;
  border-right
: #ffffff 1px solid }
  .subover
{ background-color : #003090 ; color : #ffffff }
  //这里定义子菜单鼠标OVER时的效果;
  .subout
{ background-color : #cccccc }
  //这里定义子菜单一般状态;
  
</ STYLE >
  //请把以上代码加到
< HEAD ></ HEAD > 里面。

  定义完CSS风格,下面我们把它和HTML合并到一起:
  
< table  width ="100%"  border ="0"  cellspacing ="0"  cellpadding ="0"  align ="center"  class ="over"  height ="22" >< tr >
  
< td  width ="9%"  height ="19" >
  
< table  id ="bar0"  //定义“文件”菜单项的ID;
  onmousedown
="mydown(" bar0");"
  //定义“文件”菜单项的鼠标事件;
  onMouseOver
="myover(" bar0");"
  onMouseOut
="myout(" bar0");"
  onclick
="myclick(" bar0");"
  class
="out"  //定义“文件”菜单项的类;
  width
="100%"  border ="0"  cellspacing ="0"  cellpadding ="0"  bgcolor ="#cccccc" >< tr >< td  colspan ="2"  height ="19" >< div  align ="center" > 文件 </ div ></ td ></ tr ></ table >
  //“文件”菜单项定义结束;
  
</ td >
  
< td  width ="9%"  height ="19" > //定义第二个菜单项;
  
< table  id ="bar1"  onmousedown ="mydown(" bar1");" class ="out"
  width
="100%"  border ="0"  cellspacing ="0"
  cellpadding
="0"  bgcolor ="#cccccc"
  onMouseOver
="myover(" bar1");"
  onMouseOut
="myout(" bar1");"
  onclick
="myclick(" bar1");" >
  
< tr >< td  colspan ="2"  height ="19" >< div  align ="center" > 编辑 </ div ></ td ></ tr >
  
</ table >  //第二个菜单项定义结束;
  
</ td >  //定义第N个菜单项,方法同上;
  
</ tr >
  
</ table >

  下面是子菜单的定义;
  
< div  id ="menu0"  //定义子菜单1的位置并隐藏;
  style
="POSITION: absolute;LEFT: 6px; TOP: 22px; Z-INDEX: 12; 
  width: 100px; height: 50px;display:none"
>
  
< table  class ="over"  width ="100%"  border ="0" >< tr >
  
< td  id ="00"  onmouseover ="myover(" 00");"
  onmouseout
="myout(" 00");"
  onclick
="myclick(" 想打开的文件0.htm");" >  菜单项00 </ td >
  
</ tr >< tr >
  
< td  id ="01"  onmouseover ="myover(" 01");"
  onmouseout
="myout(" 01");"
  onclick
="myclick(" 想打开的文件1.htm');" >  菜单项01 </ td >
  
</ tr ></ table >
  
</ div >
  
< div  id ="menu1"  //定义子菜单2的位置并隐藏;
  style
="POSITION: absolute;LEFT: 66px; TOP: 22px; Z-INDEX: 12;
  width: 100px; height: 50px;display:none"
>  
  
< table  class ="over"  width ="100%"  border ="0" >< tr >
  
< td  id ="10"  onmouseover ="myover(" 10");"
  onmouseout
="myout(" 10");"
  onclick
="myclick(" 想打开的文件2.htm");" >  菜单项10 </ td >
  
</ tr >< tr >
  
< td  id ="11"  onmouseover ="myover(" 11");"
  onmouseout
="myout(" 11");"
  onclick
="myclick(" 想打开的文件3.htm");" >  菜单项11 </ td >
  
</ tr >
  
</ table >
  
</ div >

  哇!HTML代码也编写完了,把它们添加到你的
< BODY ></ BODY > 中吧,现在,我们将进行代码的核心部分:
  “脚本”的编制!
  
< SCRIPT >
  
function  myover(tt)
  
// 菜单项及子菜单的鼠标OVER例程;
  { cc = document.all(tt);
  
if ( ! tt.indexOf( " bar " ))
  { cc.className
= " over " ;
  }
  
else {cc.className = " subover " ;}
  event.srcElement.style.cursor 
=   " default " ;
  }
  
function  myout(tt){
  
// 菜单项及子菜单的鼠标OUT例程;
  cc = document.all(tt);
  
if (tt.indexOf( " bar " ) == " 0 " )
  { cc.className
= " out " ;
  }
  
else {cc.className = " subout " ;}
  event.srcElement.style.cursor 
=   " auto " ;
  }
  
function  mydown(tt){  // 菜单项的鼠标DOWN例程;
  cc = document.all(tt);
  cc.className
= " down " ;
  }
  
function  myclick(tt) 
  
// 菜单项及子菜单的鼠标CLICK例程;
  {  if (tt.indexOf( " bar " ) == " 0 " )
  { hideall();
  
var  src = document.all(tt);
  
if (src.id == " bar0 " ) menu0.style.display = "   " ;
  
else   if (src.id == " bar1 " )
  menu1.style.display
= "" ;
  
else   if (src.id == " bar2 " )
  menu2.style.display
= "   " ;
  
else   if (src.id == " bar3 " )
  menu3.style.display
= "   " ;
  }
  
else {location.href = tt;}
  window.event.cancelBubble
= true ;
  
// 终结本事件冒泡
  }
  
function  hideall()
  {
  menu0.style.display
= " none " ;
  menu1.style.display
= " none " ;
  menu2.style.display
= " none " ;
  menu3.style.display
= " none " ;
  }
  
function  renclick(){
  hideall(); 
// 隐藏所有菜单
  }
  document.onmouseup
= renclick;
  
</ SCRIPT >
  把上面的脚本添加到你的页面的
< HEAD ></ HEAD > 中。


</ TEXTAREA >

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Web开发中,我们可以使用列表(或称之为ul或ol)来制作下拉菜单下拉菜单是一种常见的用户界面元素,它允许用户从预定义的选项中选择一个或多个选项。 为了创建一个下拉菜单,我们首先需要使用HTML中的<select>元素来创建一个下拉列表框。在<select>元素中,我们可以使用<option>元素来定义每个选项。每个<option>元素的文本内容就是菜单中显示的文本,而其value属性则是在用户选择该选项时所传递的值。 下面是一个简单的示例代码,用于创建一个包含三个选项的下拉菜单: <select> <option value="option1">选项1</option> <option value="option2">选项2</option> <option value="option3">选项3</option> </select> 在CSS中,我们可以使用一些属性来定义下拉菜单的样式,例如通过设置width属性来指定菜单的宽度,设置background-color属性来定义背景颜色,设置color属性来定义文本颜色等。 如果需要在菜单中显示图标或者自定义样式,我们可以将CSS类应用于<option>元素,并通过CSS样式规则对其进行修饰。 通过JavaScript,我们还可以实现一些高级的功能,例如动态添加选项、根据用户选择进行相关操作等。 总的来说,通过使用HTML中的<select>和<option>元素,结合CSS和JavaScript的功能,可以很方便制作出漂亮、功能强大的下拉菜单。这些下拉菜单可以用于各种Web应用程序,提供友好的用户交互体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值