Как позволить пользователям добавить теги object в редакторе FCK?

В дополнение к «необработанным» инструментам, предоставляемым API MutationObserver , существуют «удобные» библиотеки для работы с мутациями DOM.

Рассмотрим: MutationObserver представляет каждое изменение DOM в терминах поддеревьев. Так что, если вы, например, ожидаете вставки определенного элемента, он может быть глубоко внутри дочерних элементов mutations.mutation[i].addedNodes[j].

Другая проблема заключается в том, что ваш собственный код, реагируя на мутации, меняет DOM - вы часто хотите отфильтровать его.

Хорошей удобной библиотекой, которая решает такие проблемы, является mutation-summary (заявление об отказе: я не автор, я просто довольный пользователь), которая позволяет вам задавать запросы на интересующие вас вопросы. и получите именно это.

Пример базового использования из документов:

var observer = new MutationSummary({
  callback: updateWidgets,
  queries: [{
    element: '[data-widget]'
  }]
});

function updateWidgets(summaries) {
  var widgetSummary = summaries[0];
  widgetSummary.added.forEach(buildNewWidget);
  widgetSummary.removed.forEach(cleanupExistingWidget);
}

1
задан MichaelICE 24 June 2009 в 15:44
поделиться

3 ответа

Вы правильно: ввод тегов пользователями - это в значительной степени рецепт неприятностей.

Я бы посоветовал использовать специальные плагины для контента, который вы хотите разрешить пользователям добавлять.

Я больше знаком с TinyMCE, но уверен, что там - это широкий спектр плагинов FCKEditor для таких вещей, как YouTube. Например, плагин Youtube для FCKeditor .

2
ответ дан 3 September 2019 в 01:15
поделиться

Если вы хотите разрешить видео, вам лучше предоставить плагин, чтобы пользователь мог сделать это легко и не переходил в режим просмотра исходного кода. Просмотр исходного кода - это последнее средство, представьте, что его не существует, или даже отключите его.

На самом деле это довольно легко сделать. На своем форуме делал что-то подобное: Как вставить видео . Вот код плагина: fck_postvideo.html и fckplugin.js .

0
ответ дан 3 September 2019 в 01:15
поделиться

Добавьте его в допустимые теги в fckconfig.js как таковые:

FCKConfig.ProtectedSource.Add (// gi);

0
ответ дан 3 September 2019 в 01:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: