阿赖菜单控件参考手册

简介:

网上已经有很多用javascript设计的菜单程序,但大多使用起来较复杂,缺乏灵活性和通用性。这个菜单控件程序完全采用了面向对象的方法设计,提供了最简单最易于理解的方式的构建菜单,使用最简化方式添加菜单项,同时设置菜单项的命令功能。本菜单通过在show方法上的一个小技巧实现无限级子菜单的功能。阿赖菜单控件包括windows经典菜单和仿office XP两种风格的菜单,同时提供了相应风格的菜单栏控件程序(使用时是否将菜单显示于菜单栏上是不限的),本参考中以绿色文字标示xp菜单的用法中区别于经典菜单之处,若无特别说明表示为同时适用于两种菜单。

使用方法/步骤:

一、将菜单控件文件加载到网页:

<script src="alai_menu.js"></script>

<script src="alai_menu_xp.js"></script>

二、创建菜单控件实例

menu=new alai_menu(width)

menu=new alai_menu_xp(width)

三、添加菜单项:

menu.add("菜单项")

menu.add("菜单项二")

四、如果要将菜单显示于菜单栏上,则要创建菜单栏控件实例:

bar=new menu_bar(top,left)

bar=new menu_bar_xp(top,left)

五、将菜单添加到菜单栏:

bar.add(“菜单一”,menu)

菜单控件使用参考:

一、创建菜单控件的实例对象

语法:menu=new alai_menu(width)

         menu=new alai_menu_xp(width,imagelist)

width参数,是指菜单的宽度,缺省值是180

imagelist参数,应该是alai_imagelist的一个实例,用于向菜单提供图标。

二、add 方法,添加一个菜单项并返回对菜单项对象的引用

语法:item=menu.add(text,exeType,exeArg,target)

         item=menu.add(text,icon,exeType,exeArg,target)

参数:

       text – 字符串类型,菜单项上显示的文字

       icon – XP风格菜单使用的图标路径。

       exeType字符串类型,指示点击菜单项后执行的动作类型,可选的值如下:

                     url打开一个由exeArg参数提供的网址,同时可用target参数设置打开网址的目标窗口

                     js  执行由exeArg参数提供的一段javascript程序(exeArg为字符串)

                     sub – 显示由exeArg参数提供一个菜单对象,作为该菜单的子菜单显示

                     hide – 隐藏菜单

       exeArgexeType配合使用,见上exeType的说明

       target – exeTypeurl时设置打开网址的目标窗口,缺省值为 _blank

三、addLink 方法,添加一个具有网址链接的菜单项并返回对菜单项对象的引用

语法:item=menu.addLink(url,text,target)

         item=menu.addLink(url,text,target,icon)

参数:

       url字符串类型,网址

       text –字符串类型,显示的文字,如果缺省将用url代替

       target –字符串类型,链接打开的目标窗口,缺省值为 _blank

       icon -字符串类型,XP风格菜单使用的图标路径

四、separate 方法,显示一个菜单分隔线,语法:menu.separate()

五、show 方法,显示菜单

语法:menu.show() – 在鼠标指针所在位置显示菜单

         menu.show(x,y) - 在指定的x,y 位置显示菜单

         menu.show(sub) – sub菜单作为menu的子菜单显示出来

六、hide 方法,隐藏菜单,语法:menu.hide()

七、item 对象,指一个具体的菜单项对象,可通过add方法的返回值获得该对象,或者通过menu.item[index]的方法引用

1)      enable属性,获取或设置菜项的enable状态

2)      execute 属性,单击菜单项后将执行的function.,语法:item.execute()

3)      remove 方法,将菜单项删除。语法:item.remove()

八、item 集合,是一个菜单项对象的数组,如:menu.item[0]表示第一个菜单项

九、body 属性,菜单对应的HTML 文档对象

十、bar属性,菜单对显示于菜单栏上的项,如果菜单未显示于菜单栏上,bar值为null

十一、       isShow 属性,指示菜单显示状态,true – 显示 false – 隐藏

菜单栏控件使用参考:

一、创建菜单栏控件实例对象

语法:bar=new menu_bar(top,left)

         bar=new menu_bar_xp(top,left)

top,left是菜单栏显示的位置

二、add 方法,在菜单栏上添加一个菜单,并返回一个菜单栏的item对象

语法:bar.add(text,menu) text – 显示的文字 menu – 一个菜单实例对象

三、item 对象,可通过add方法的返回值获得该对象,或者通过bar.item[index]的方法引用

四、item 集合,所有菜单栏项对象的数数

五、menu集合,与item对应的菜单对象的集合

六、body属性,菜单栏对应的HTML 文档对象


copywrite by 赖国欣 2003/6 All right reserved

Email: a@lai.com.cn website: http://www.9499.net