|
|
@@ -517,7 +517,6 @@ class MenuComponent {
|
|
|
if (!EventHandlerUtil.trigger(this.element, "vb.menu.accordion.show")) {
|
|
|
return
|
|
|
}
|
|
|
-
|
|
|
if (!this.options.accordion.expand) {
|
|
|
this._hideAccordions(item)
|
|
|
}
|
|
|
@@ -897,17 +896,15 @@ class MenuComponent {
|
|
|
const items = document.querySelectorAll<HTMLElement>(
|
|
|
`.show.menu-dropdown[${prefix}menu-trigger]`
|
|
|
)
|
|
|
-
|
|
|
if (items && items.length > 0) {
|
|
|
for (let i = 0, len = items.length; i < len; i++) {
|
|
|
const item = items[i]
|
|
|
const menu = MenuComponent.getInstance(item)
|
|
|
-
|
|
|
if (menu && menu.getItemSubType(item) === "dropdown") {
|
|
|
if (skip) {
|
|
|
if (
|
|
|
- menu.getItemSubElement(item)?.contains(skip) &&
|
|
|
- !item.contains(skip) &&
|
|
|
+ menu.getItemSubElement(item)?.contains(skip) === false &&
|
|
|
+ item.contains(skip) === false &&
|
|
|
item !== skip
|
|
|
) {
|
|
|
menu.hide(item)
|
|
|
@@ -937,7 +934,7 @@ class MenuComponent {
|
|
|
// 初始化菜单
|
|
|
document.querySelectorAll(selector).forEach((el) => {
|
|
|
const menuItem = el as HTMLElement
|
|
|
- // console.log("MENU", menuItem)
|
|
|
+ //console.log("MENU", menuItem)
|
|
|
let menuInstance = MenuComponent.getInstance(menuItem)
|
|
|
if (!menuInstance) {
|
|
|
menuInstance = new MenuComponent(el as HTMLElement, defaultMenuOptions)
|
|
|
@@ -959,10 +956,12 @@ class MenuComponent {
|
|
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
|
const menu = menuObj.getElement()
|
|
|
const sub = menuObj.getItemSubElement(item) as HTMLElement
|
|
|
- if (item === e.target ?? item.contains(e.target as HTMLElement)) {
|
|
|
+ console.log("menuObj", item, menuObj, menu, sub, e.target)
|
|
|
+ console.log("2222", menu === e.target, menu.contains(e.target as HTMLElement))
|
|
|
+ if (menu === e.target || menu.contains(e.target as HTMLElement)) {
|
|
|
continue
|
|
|
}
|
|
|
- if (sub && (sub === e.target ?? sub.contains(e.target as HTMLElement))) {
|
|
|
+ if (sub && (sub === e.target || sub.contains(e.target as HTMLElement))) {
|
|
|
continue
|
|
|
}
|
|
|
menuObj.hide(item)
|