diff options
Diffstat (limited to 'js/src/tab.js')
-rw-r--r-- | js/src/tab.js | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/js/src/tab.js b/js/src/tab.js index ffca5f299e..4d823cc61c 100644 --- a/js/src/tab.js +++ b/js/src/tab.js @@ -66,8 +66,7 @@ class Tab extends BaseComponent { show() { if ((this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && - this._element.classList.contains(CLASS_NAME_ACTIVE)) || - isDisabled(this._element)) { + this._element.classList.contains(CLASS_NAME_ACTIVE))) { return } @@ -202,7 +201,13 @@ class Tab extends BaseComponent { */ EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) { - event.preventDefault() + if (['A', 'AREA'].includes(this.tagName)) { + event.preventDefault() + } + + if (isDisabled(this)) { + return + } const data = Data.get(this, DATA_KEY) || new Tab(this) data.show() |