我正在处理 jqueryUI 菜单小部件并出现错误行为。
查看以下代码片段和下面的菜单方案: 正如您所见,菜单已打开到第三级。我的意图是只需单击鼠标即可关闭整个第二个菜单项。所以我想点击“项目2”,所有对应的子项目都应该折叠(2.x,2.xx)。不幸的是,我目前必须在主菜单项上单击两次才能实现此目的。
项目 1
-- 项目 1.1
第 2 项
-- 项目 2.1
-- 项目 2.2
--- 项目 2.2.1
--- 项目 2.2.2
--- 项目 2.2.3
-- 项目 2.3
负责的功能结构如下:
collapseAll: function (event, all) {
clearTimeout(this.timer);
this.timer = this._delay(function () {
// If we were passed an event, look for the submenu that contains the event
var currentMenu = all ? this.element :
$(event && event.target).closest(this.element.find(".ui-menu"));
// If we found no valid submenu ancestor, use the main menu to close all sub menus anyway
if (!currentMenu.length) {
currentMenu = this.element;
}
this._close(currentMenu);
this.blur(event);
this.activeMenu = currentMenu;
}, this.delay);
}
,
任何想法?