diff options
Diffstat (limited to 'js/src')
| -rw-r--r-- | js/src/modal.js | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/js/src/modal.js b/js/src/modal.js index 125182e13..f65820130 100644 --- a/js/src/modal.js +++ b/js/src/modal.js @@ -51,6 +51,7 @@ const Event = { } const ClassName = { + SCROLLABLE : 'modal-dialog-scrollable', SCROLLBAR_MEASURER : 'modal-scrollbar-measure', BACKDROP : 'modal-backdrop', OPEN : 'modal-open', @@ -60,6 +61,7 @@ const ClassName = { const Selector = { DIALOG : '.modal-dialog', + MODAL_BODY : '.modal-body', DATA_TOGGLE : '[data-toggle="modal"]', DATA_DISMISS : '[data-dismiss="modal"]', FIXED_CONTENT : '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top', @@ -244,7 +246,12 @@ class Modal { this._element.style.display = 'block' this._element.removeAttribute('aria-hidden') this._element.setAttribute('aria-modal', true) - this._element.scrollTop = 0 + + if ($(this._dialog).hasClass(ClassName.SCROLLABLE)) { + this._dialog.querySelector(Selector.MODAL_BODY).scrollTop = 0 + } else { + this._element.scrollTop = 0 + } if (transition) { Util.reflow(this._element) |
