mirror of https://github.com/twbs/bootstrap.git
Dropdown: clearMenus is always an event callback
This commit is contained in:
parent
f71640f048
commit
dd07c1ff9e
|
@ -351,7 +351,7 @@ class Dropdown extends BaseComponent {
|
||||||
}
|
}
|
||||||
|
|
||||||
static clearMenus(event) {
|
static clearMenus(event) {
|
||||||
if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {
|
if (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY)) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -371,25 +371,23 @@ class Dropdown extends BaseComponent {
|
||||||
relatedTarget: context._element
|
relatedTarget: context._element
|
||||||
}
|
}
|
||||||
|
|
||||||
if (event) {
|
const composedPath = event.composedPath()
|
||||||
const composedPath = event.composedPath()
|
const isMenuTarget = composedPath.includes(context._menu)
|
||||||
const isMenuTarget = composedPath.includes(context._menu)
|
if (
|
||||||
if (
|
composedPath.includes(context._element) ||
|
||||||
composedPath.includes(context._element) ||
|
(context._config.autoClose === 'inside' && !isMenuTarget) ||
|
||||||
(context._config.autoClose === 'inside' && !isMenuTarget) ||
|
(context._config.autoClose === 'outside' && isMenuTarget)
|
||||||
(context._config.autoClose === 'outside' && isMenuTarget)
|
) {
|
||||||
) {
|
continue
|
||||||
continue
|
}
|
||||||
}
|
|
||||||
|
|
||||||
// Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu
|
// Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu
|
||||||
if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {
|
if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
if (event.type === 'click') {
|
if (event.type === 'click') {
|
||||||
relatedTarget.clickEvent = event
|
relatedTarget.clickEvent = event
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
context._completeHide(relatedTarget)
|
context._completeHide(relatedTarget)
|
||||||
|
|
Loading…
Reference in New Issue