2013-11-02 3 views
0

Я использую ckeditor и до сих пор, как он. Поскольку я загружаю его из CDN, у меня нет непосредственного доступа к config.js. Я хочу разрешить большинство тегов html, но хочу блокировать вкладки, так как форматирование моей страницы сильно зависит от тегов div. Однако я не могу заблокировать теги div из CKEditor. Я прочитал документацию ckeditor и следил за методами CKEDITOR.replace и replaceall с текстовыми полями и текстовыми полями, классифицированными как ckeditor. Однако мои изменения, похоже, не принесли никакого эффекта.ckeditor disallow некоторые теги

I am loading the ckeditor.js from a CDN first. 

Then I tried 
var editor = CKEDITOR.replace('ckeditor', { 
    allowedContent: 'a[!href]; ul; li{text-align}(someclass)' 
}); 

я поместил выше функцию как в document.ready, а также вблизи конца тела после указанного текстового поля загружается в разное время, между тегами сценария, чтобы проверить.

Как-то мои изменения, похоже, не имеют никакого эффекта. У кого-нибудь есть предложения или помощь? Очевидно, я что-то прикручиваю. Любые указания о том, куда отправлять вызовы CKEDITOR.replace/replaceall? Мое текстовое поле классифицируется как ckeditor.

Благодаря кучу

ответ

0

Мой TextArea классифицируется как CKEditor.

CKEditor автоматически заменяет все textarea из .ckeditor класс в DOM. Это первая причина, по которой ваш явный вызов CKEDITOR.replace ничего не делает. Другая причина заключается в том, что такой вызов expects id to be passed является первым аргументом.

Если вы хотите оставить это таким образом, переведите allowedContent в определение config.js, чтобы он делился между экземплярами и избегал CKEDITOR.replace. В противном случае избавиться от класса .ckeditor от вашего элемента или отключить/изменить config.replaceClass сделать CKEDITOR.replace работать как ожидалось (id в качестве параметра).

P.S. Убедитесь, что у вас установлена ​​последняя версия CKEditor.

+0

Hi Oleq. Я могу добавить ID в текстовое поле, которое я хочу манипулировать. Проблема с config.js У меня есть то, что я загружаю ckeditor из CDN и, следовательно, не загружает ckeditor с моего сайта. Могу ли я загрузить локальный файл config.js, чтобы изменить загрузчик ckeditor из Интернета? Я могу, конечно, удалить класс ckeditor из текстового поля и вместо этого дать ему идентификатор, а затем заменить. – user2530027

+0

Пробовал, что. Добавил класс xeditor в текстовый редактор и удалил класс ckeditor, теперь, когда я открываю страницу, он показывает при наведении мыши на xeditor - поэтому он активируется. Однако это все равно не мешает мне использовать все теги. Что я делаю? – user2530027

+0

На самом деле проблема не решена, потому что даже если используется 'CKEDITOR.replace ('editor1', config);', ACF не срабатывает, и вы можете вводить почти что угодно. Я попытался сделать панель инструментов только кнопкой источника, а allowedContent - просто «p», но я мог бы вводить что-либо в исходный режим, и это не волнует, когда вы переходите к wysiwyg. – Nenotlep

Смежные вопросы