Проблема и исправление при использовании CKEditor внутри модального Bootstrap v3 описаны здесь >>
В Bootstrap v4 имя функции изменилось с enforceFocus на _enforceFocus
К сожалению, моих навыков js недостаточно для перевода предлагаемого исправления для Bootstrap v3 в Bootstrap v4.
Любая помощь приветствуется :-)



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Это сработало для меня
$.fn.modal.Constructor.prototype._enforceFocus = function _enforceFocus() {
var _this4 = this;
$(document).off(Event.FOCUSIN).on(Event.FOCUSIN, function (event) {
if (
document !== event.target
&& _this4._element !== event.target
&& $(_this4._element).has(event.target).length === 0
&& !$(event.target.parentNode).hasClass('cke_dialog_ui_input_select')
&& !$(event.target.parentNode).hasClass('cke_dialog_ui_input_text')
) {
_this4._element.focus();
}
});
};
Я взял исходную функцию _enforceFocus из Bootstrap v4 и добавил !$(event.target.parentNode).hasClass('cke_dialog_ui_input_select') и !$(event.target.parentNode).hasClass('cke_dialog_ui_input_text') в оператор if.
Другое решение - передать опцию {focus: false} при отображении модального окна. Эта опция является новой в Bootstrap 4 (см. Документация по Bootstrap 4). Использование этой опции предотвратит вызов Bootstrap _enforceFocus.
Совет: я удалил эту часть «off (Event.FOCUSIN)», потому что она не позволяла нажимать некоторые кнопки.