简简单单右键菜单
2009-10-30 00:00:00 来源:WEB开发网接着我们要跳过一些函数的定义,直接来看创建HTML的部分
01.//获取菜单的跟
02.var $root = $("#" + option.alias);
03. var root = null;
04. if ($root.length == 0) { //如果顶级不存在,这创建顶级菜单哦
05. root = buildGroup.apply(gTemplet.clone()[0], [option]);
06. root.applyrule = applyRule; //把一个方法注册到dom上
07. root.showMenu = showMenu; //另外一个方法注册的该dom上
08. addItems(option.alias, option.items); //添加菜单项
09. }
10. else {
11. root = $root[0]; //否则就用这个了
12. }
这个代码很玄乎,好像做了些什么好像有什么都没做,其实只有来看下buildGroup方法和addItems才知道到底干了什么
01.var buildGroup = function(obj) { //创建菜单容器
02. groups[obj.alias] = this; //菜单项注册到临时变量中
03. this.gidx = obj.alias;
04. this.id = obj.alias;
05. if (obj.disable) { //如果是禁用状态
06. this.disable = obj.disable;
07. this.className = "b-m-idisable";
08. }
09. //设置菜单宽度,设置事件的阻止事件冒泡,并添加到body中
10. $(this).width(obj.width).click(returnfalse).mousedown(returnfalse).appendTo($("body"));
11. obj = null;
12. return this; //返回菜单本身
13. };
更多精彩
赞助商链接