Summernote переносит<p><br></ p> для insertNode()
Я пытаюсь вставить простой img
тег в редактор.
jQuery('<img />').attr('src', '/uploads/images/' + res.data.filename);
jQuery('.summernote').summernote('insertNode', $image[0]);
Я ожидаю увидеть
<img src="/uploads/images/image.jpg" />
Что я получаю
<p><br><img src="/uploads/images/image.jpg" /></p>
Я даже добавляю объект изображения в объект абзаца, но потом получаю <p><br></p>
до и после узла.
Не видя такого поведения, очевидно написано в исходном файле плагина.
Кто-нибудь применял пользовательские функции, чтобы просто вставить в простой узел?
3 ответа
Внесите изменения в плагин SummerNote. Вы можете изменить "пробел" в summernote.js в строке 873, я думаю,
blankHTML = env.isMSIE && env.browserVersion < 11 ? ' ' : '<br>';
например
blankHTML = '';
Лучшим вариантом было бы добавить тэг blankHTML также в summernote. (Просто начните переходить к тегу emptyPara в summernote.js. API Summernote хорошо продуман и прост для понимания. Но я не уверен, что вы можете изменить blankHTML перед инициализацией summernote.) Браво за свою работу и всех людей, которые вносят свой вклад в плагины в github.
Понять, почему он добавляет оболочку, когда я вставляю узел в новую строку. Это там, как только я добавляю новую строку, она уже создает оболочку.
Попробуйте использовать функцию "insertImage" вместо "insertNode".
Вот документы: insertImage