Замените атрибут config в CKEditor 4.10: a не определено - PullRequest
0 голосов
/ 12 октября 2018

Имея экземпляр CKEditor в каком-то проприетарном стороннем приложении, я хочу заменить некоторые параметры конфигурации для целей настройки.Например, некоторые кнопки панели инструментов удаляются по умолчанию, я хочу, чтобы все было видно.

Я пробовал разные вещи, такие как

var instance = CKEDITOR.instances['editor2']
instance.config.removeButtons = ""
instance.destroy()
CKEDITOR.replace('editor2')

, которые я нашел здесь , но всегда получал следующую ошибку:

Ошибка типа: aне определено

Найдены некоторые SO-квесты, где это связано с лидирующим # в Id, но у меня его нет, и экземпляр существует при просмотре экземпляров с помощью инструментов разработчика браузера:

> CKEDITOR.instances
Object { editor1: {…}, editor2: {…} }

Также попробовал следующий идентификатор объекта вместо editor2

> CKEDITOR.instances.editor2.id
"cke_54"

или use replace :

CKEDITOR.replace('editor2', {removeButtons: ''})

Но все этоне работает тоже, я всегда получаю ту же ошибку, что неопределен.Сам редактор работает и не выдает ошибок в консоли браузера.

1 Ответ

0 голосов
/ 26 января 2019

У меня была такая же ошибка:

Ошибка типа: a не определена

Я проследил свою проблему до не найденного элемента.Специально для меня, мой документ не был полностью загружен, когда выполнялся мой код JS, аналогичный вашему.

Я бы исследовал две вещи:

  1. Убедитесь, что в вашем элементе есть элементдокумент с ID = 'editor2'.
  2. Не запускайте JS, пока документ не будет готов.Сделайте это, поместив его в $ (document) .ready ().Пример:

    $ (документ) .ready (function () {var instance = CKEDITOR.instances ['editor2'] instance.config.removeButtons = "" instance.destroy () CKEDITOR.replace ('editor2'))});

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...