Как добавить изображение в Quill JS?

Я не могу понять, как заставить изображения работать, как в примере на http://quilljs.com/.

Я попытался добавить <span title="Image" class="ql-format-button ql-image"></span> на панель инструментов, которая добавляет кнопку, но нажатие на кнопку ничего не делает, и я не могу найти что-либо в документации. Любое предложение?

Ответ 1

Обновленный ответ

Начиная с версии 1.0 и выше вам больше не нужно добавлять модуль инструментальной подсказки, который он включил по умолчанию. Примером того, как включить его, было бы это.

    <script>
            var toolbarOptions = [
                ['bold', 'italic', 'underline', 'strike'],        // toggled buttons
                ['blockquote', 'code-block'],

                [{ 'header': 1 }, { 'header': 2 }],               // custom button values
                [{ 'list': 'ordered'}, { 'list': 'bullet' }],
                [{ 'script': 'sub'}, { 'script': 'super' }],      // superscript/subscript
                [{ 'indent': '-1'}, { 'indent': '+1' }],          // outdent/indent
                [{ 'direction': 'rtl' }],                         // text direction

                [{ 'size': ['small', false, 'large', 'huge'] }],  // custom dropdown
                [{ 'header': [1, 2, 3, 4, 5, 6, false] }],
                [ 'link', 'image', 'video', 'formula' ],          // add image support
                [{ 'color': [] }, { 'background': [] }],          // dropdown with defaults from theme
                [{ 'font': [] }],
                [{ 'align': [] }],

                ['clean']                                         // remove formatting button
            ];

        var quill = new Quill('#editor', {
            modules: {
                toolbar: toolbarOptions
            },

            theme: 'snow'
        });
    </script>

Ответ 2

Изменить: это не более точная версия 1.0. Крис Хокс answer является правильным.

Это, к сожалению, не документировано нигде, но вам нужно включить модуль tool-tool. Например, это то, что использует редактор на домашней странице quilljs.com:

quill = new Quill('#editor', {
  modules: {
    'toolbar': { container: '#toolbar' },
    'image-tooltip': true,
    'link-tooltip': true
  },
  theme: 'snow'
});

Ответ 3

Хорошо, что приведенный выше ответ верен в js, но вам нужно добавить html в редактор, например:

<span class="ql-format-group">
  <span title="Link" class="ql-format-button ql-link"></span>
  <span class="ql-format-separator"></span>
  <span title="Image" class="ql-format-button ql-image"></span>
</span>

поэтому после этого введите js

quill = new Quill('#editor', {
  modules: {
    'toolbar': { container: '#toolbar' },
    'image-tooltip': true,
    'link-tooltip': true
  },
  theme: 'snow'
});

Ответ 4

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

У вас есть два способа решения вашей проблемы, оба работают на официальные темы Snow и Bubble. В любом случае, вам не нужно добавлять следующий код:

'image-tooltip': true,
'link-tooltip': true

Способ 1: Инициализируйте перо следующим образом:

var editor = new Quill('#editorDiv', 
{
    modules: {
      toolbar: [
            ...
            ['image'],
            ...
        ],
        //not needed anymore: 'image-tooltip': true,
        //not needed anymore: 'link-tooltip': true
        ...
    },
    ...
});

Способ 2: Инициализируйте перо следующим образом:

<div id="editorToolbarDiv">
  ...
  <button class="ql-image"></button>
</div>
<div id="editorDiv"></div>
var editor = new Quill('#editorDiv', 
{
    modules: {
        toolbar: '#editorToolbarDiv',
        //not needed anymore: 'image-tooltip': true,
        //not needed anymore: 'link-tooltip': true,
        ...
    },
    ...
});

Начиная с версии 1.3, Quill не поддерживает изменение размера изображений. Однако это можно сделать с помощью специального модуля.