1.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /**
  2. * @license Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.
  3. * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
  4. */
  5. /* global document, console, window, setTimeout */
  6. import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor';
  7. import Enter from '@ckeditor/ckeditor5-enter/src/enter';
  8. import Typing from '@ckeditor/ckeditor5-typing/src/typing';
  9. import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph';
  10. import Link from '@ckeditor/ckeditor5-link/src/link';
  11. import BlockToolbar from '@ckeditor/ckeditor5-ui/src/toolbar/block/blocktoolbar';
  12. import Image from '../../../../src/image';
  13. import ImageCaption from '../../../../src/imagecaption';
  14. ClassicEditor
  15. .create( document.querySelector( '#editor' ), {
  16. plugins: [ Enter, Typing, Paragraph, Link, Image, ImageCaption, BlockToolbar ],
  17. toolbar: [],
  18. blockToolbar: [ 'Link' ]
  19. } )
  20. .then( editor => {
  21. window.editor = editor;
  22. const doc = editor.model.document;
  23. document.querySelector( '.start' ).addEventListener( 'click', () => {
  24. let image;
  25. editor.model.change( writer => {
  26. image = writer.createElement( 'image', { src: 'sample-small.jpg' } );
  27. writer.insert( image, doc.getRoot().getChild( 0 ), 'after' );
  28. } );
  29. setTimeout( () => {
  30. editor.ui.view.element.querySelector( 'img' ).src = '../../sample.jpg';
  31. }, 3000 );
  32. } );
  33. } )
  34. .catch( err => {
  35. console.error( err.stack );
  36. } );