selection.html 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0" />
  6. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.4.0/css/font-awesome.min.css">
  7. <link rel="stylesheet" href="../../css/froala_editor.css">
  8. <link rel="stylesheet" href="../../css/froala_style.css">
  9. <link rel="stylesheet" href="../../css/plugins/code_view.css">
  10. <link rel="stylesheet" href="../../css/plugins/colors.css">
  11. <link rel="stylesheet" href="../../css/plugins/emoticons.css">
  12. <link rel="stylesheet" href="../../css/plugins/image_manager.css">
  13. <link rel="stylesheet" href="../../css/plugins/image.css">
  14. <link rel="stylesheet" href="../../css/plugins/line_breaker.css">
  15. <link rel="stylesheet" href="../../css/plugins/table.css">
  16. <link rel="stylesheet" href="../../css/plugins/char_counter.css">
  17. <link rel="stylesheet" href="../../css/plugins/video.css">
  18. <link rel="stylesheet" href="../../css/plugins/fullscreen.css">
  19. <link rel="stylesheet" href="../../css/plugins/file.css">
  20. <link rel="stylesheet" href="../../css/plugins/quick_insert.css">
  21. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.3.0/codemirror.min.css">
  22. <style>
  23. body {
  24. text-align: center;
  25. }
  26. div#editor {
  27. width: 81%;
  28. margin: auto;
  29. text-align: left;
  30. }
  31. .ss {
  32. background-color: red;
  33. }
  34. </style>
  35. </head>
  36. <body>
  37. <div id="editor">
  38. <div id='edit' style="margin-top: 30px;">
  39. <h1>Save / Restore Selection</h1>
  40. <ol>
  41. <li>You can use the buttons to play around with the selection:
  42. <ul>
  43. <li>The first button saves the selection.</li>
  44. <li>The second button restores the selection.</li>
  45. <li>The last button clears the selection.</li>
  46. </ul>
  47. </li>
  48. <li>The selection will be restored correctly only if you don't make any changes by typing into the WYSIWYG HTML
  49. editor after you save it.</li>
  50. </ol>
  51. </div>
  52. </div>
  53. <script type="text/javascript"
  54. src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.3.0/codemirror.min.js"></script>
  55. <script type="text/javascript"
  56. src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.3.0/mode/xml/xml.min.js"></script>
  57. <script type="text/javascript" src="../../js/froala_editor.min.js"></script>
  58. <script type="text/javascript" src="../../js/plugins/align.min.js"></script>
  59. <script type="text/javascript" src="../../js/plugins/char_counter.min.js"></script>
  60. <script type="text/javascript" src="../../js/plugins/code_beautifier.min.js"></script>
  61. <script type="text/javascript" src="../../js/plugins/code_view.min.js"></script>
  62. <script type="text/javascript" src="../../js/plugins/colors.min.js"></script>
  63. <script type="text/javascript" src="../../js/plugins/draggable.min.js"></script>
  64. <script type="text/javascript" src="../../js/plugins/emoticons.min.js"></script>
  65. <script type="text/javascript" src="../../js/plugins/entities.min.js"></script>
  66. <script type="text/javascript" src="../../js/plugins/file.min.js"></script>
  67. <script type="text/javascript" src="../../js/plugins/font_size.min.js"></script>
  68. <script type="text/javascript" src="../../js/plugins/font_family.min.js"></script>
  69. <script type="text/javascript" src="../../js/plugins/fullscreen.min.js"></script>
  70. <script type="text/javascript" src="../../js/plugins/image.min.js"></script>
  71. <script type="text/javascript" src="../../js/plugins/image_manager.min.js"></script>
  72. <script type="text/javascript" src="../../js/plugins/line_breaker.min.js"></script>
  73. <script type="text/javascript" src="../../js/plugins/inline_style.min.js"></script>
  74. <script type="text/javascript" src="../../js/plugins/link.min.js"></script>
  75. <script type="text/javascript" src="../../js/plugins/lists.min.js"></script>
  76. <script type="text/javascript" src="../../js/plugins/paragraph_format.min.js"></script>
  77. <script type="text/javascript" src="../../js/plugins/paragraph_style.min.js"></script>
  78. <script type="text/javascript" src="../../js/plugins/quick_insert.min.js"></script>
  79. <script type="text/javascript" src="../../js/plugins/quote.min.js"></script>
  80. <script type="text/javascript" src="../../js/plugins/table.min.js"></script>
  81. <script type="text/javascript" src="../../js/plugins/save.min.js"></script>
  82. <script type="text/javascript" src="../../js/plugins/url.min.js"></script>
  83. <script type="text/javascript" src="../../js/plugins/video.min.js"></script>
  84. <script>
  85. (function () {
  86. FroalaEditor.DefineIcon('saveSelection', { NAME: 'download', SVG_KEY: 'print' })
  87. FroalaEditor.RegisterCommand('saveSelection', {
  88. title: 'Save',
  89. focus: true,
  90. undo: false,
  91. refreshAfterCallback: false,
  92. callback: function () {
  93. this.selection.save()
  94. alert('selection saved')
  95. }
  96. })
  97. FroalaEditor.DefineIcon('restoreSelection', { NAME: 'upload', SVG_KEY: 'upload' });
  98. FroalaEditor.RegisterCommand('restoreSelection', {
  99. title: 'Restore',
  100. focus: true,
  101. undo: false,
  102. refreshAfterCallback: false,
  103. callback: function () {
  104. this.selection.restore()
  105. }
  106. })
  107. FroalaEditor.DefineIcon('clearSelection', { NAME: 'trash', SVG_KEY: 'remove' });
  108. FroalaEditor.RegisterCommand('clearSelection', {
  109. title: 'Clear',
  110. focus: true,
  111. undo: false,
  112. refreshAfterCallback: false,
  113. callback: function () {
  114. this.selection.clear()
  115. }
  116. })
  117. new FroalaEditor("#edit", {
  118. toolbarButtons: [ ['saveSelection', 'restoreSelection', 'clearSelection'] ]
  119. })
  120. })()
  121. </script>
  122. </body>
  123. </html>