Проблема конфигурации / очистки - PullRequest
2 голосов
/ 05 июля 2010

Используя копирование-вставку (или плагин кода), пользователи могут вставлять содержимое, включая промежутки, уступающие вложенным, даже если я думал, что мои настройки запрещают вложенные промежутки. Я хочу, чтобы вложенные диапазоны были отфильтрованы при выполнении действия "cleanup".

Выполнение ручной очистки (команда "mceCleanup", которая запускается после вставки текста) также не помогает.

Ссылаясь на документацию TinyMCE , пользователь может выбрать, какие дочерние элементы будут отбрасываться при выполнении "очистки" для определенных родительских узлов.

Есть ли проблема с моим конфигом? Если да, то что не так? Есть предложения?

Вот моя конфигурация (соответствующая часть, я использую новейшую версию tinymce (3.3.8), встречается во всех основных браузерах):

    cleanup : true,

    encoding: "xml",

    dialog_type : "modal",

    object_resizing: false,
    paste_strip_class_attributes: "all",

    entity_encoding: "raw",

    fix_nesting: true,

    invalid_elements: "strong,ul,ol,li",


    // The valid_elements option defines which elements will remain in the edited text when the editor saves.
    valid_elements: "@[id|class|title|style],"
    + "a[name|href|target|title],"
    + "#p,-ol,-ul,-li,br,img[src],-sub,-sup,-b,-i,"
    + "-span,hr",

    valid_child_elements : "body[p|ol|ul]"  //EDIT: had some ","s instead of "|"s
    + ",p[a|span|b|i|sup|sub|img|hr|#text]"
    + ",span[a|b|i|sup|sub|img|#text]"
    + ",a[span|b|i|sup|sub|img|#text]"
    + ",b[span|a|i|sup|sub|img|#text]"
    + ",i[span|a|b|sup|sub|img|#text]"
    + ",sup[span|a|i|b|sub|img|#text]"
    + ",sub[span|a|i|b|sup|img|#text]"
    + ",li[span|a|b|i|sup|sub|img|ol|ul|#text]"
    + ",ol[li]"
    + ",ul[li]"

1 Ответ

2 голосов
/ 08 июля 2010

Я не думаю, что есть какие-либо проблемы с вашим конфигом.

Проблема в том, что код TinyMCE полностью игнорирует атрибут valid_child_elements начиная с версии 3.3b1 (25 января 2010 г.). Я использовал Window Grep для проверки всех файлов в загрузке 3.3.8, и строка valid_child_elements была найдена только дважды (и в одной строке) в /jscripts/tiny_mce/Classes/Editor.js - это оказалось простым заданием утверждение, которое не используется где-либо еще.

Оказывается, что в версии 3.2.7 (22 сентября 2009 г.) или ниже (см. http://sourceforge.net/projects/tinymce/files), атрибут valid_child_elements вызывает функцию с именем addValidChildRules в /jscripts/tiny_mce/Classes/dom/Serializer.js, которая, я считаю, делает то, что вы, по сути, хочу. В этой версии есть ошибки, заметьте. В конце концов мне удалось удалить вложенные теги после добавления упрощенного параметра конфигурации valid_child_elements в один из примеров файлов при загрузке:

valid_child_elements : "span[a|b|i|sup|sub|img|#text]"

Надеюсь, это поможет.

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