TinyMCE: вставляем картинку после обазаца
Есть такой замечательный редактор TinyMCE. Написан на явяскрипте, но сделано здорово.
Возникла задача: вставлять картинку, которую отправил пользователь не в тексте, где стоит курсор, а в конце абзаца
TinyMCE формирует уже готовый хтмл код у себя в форме, поэтому конец абзаца он обозначет как </p>. При этом если выделить кусочек и вставить картинку, он воткнет ее в конец этого кусочка.
Для вставки картиник пользовали плагин advancedimage, его код и насилуем.
Функция insertAndClose:
el = ed.selection.getNode();
if (el && el.nodeName == ‘IMG’) {… } else {…}
Вот эта штука проверяет выделена ли картинка (вдруг мы редактируем вставленное ранее) или втыкается новая.
В else вставляем:
ed.selection.select(el);
try {
ed.selection.collapse(false);
} catch (ex) {
// Ignore
}
Первая строка выделяет весь абзац (вместе с тегом p, так как getNode нам возвращает именно его). Collapse “ставит курсор” в конец, за тег p (если без него, то весь абзац будет заменяться на картинку)
Собсно вот. Много секса и вот такая интересная инфа добыта

Ваш отзыв