zhangchao 5 年前
父节点
当前提交
add2bf5bec
共有 4 个文件被更改,包括 23 次插入1 次删除
  1. 4
    0
      src/RichTextEditor.js
  2. 2
    0
      src/WebviewMessageHandler.js
  3. 1
    0
      src/const.js
  4. 16
    1
      src/editor.html

+ 4
- 0
src/RichTextEditor.js 查看文件

446
     this._sendAction(actions.insertImage, url);
446
     this._sendAction(actions.insertImage, url);
447
   }
447
   }
448
 
448
 
449
+  insertEmoji(url) {
450
+    this._sendAction(actions.insertEmoji, url);
451
+  }
452
+
449
   setSubscript() {
453
   setSubscript() {
450
     this._sendAction(actions.setSubscript);
454
     this._sendAction(actions.setSubscript);
451
   }
455
   }

+ 2
- 0
src/WebviewMessageHandler.js 查看文件

62
       return `zss_editor.updateLink('${action.data.url}, ${action.data.title}');`;
62
       return `zss_editor.updateLink('${action.data.url}, ${action.data.title}');`;
63
     case `${actions.insertImage}`:
63
     case `${actions.insertImage}`:
64
       return `zss_editor.insertImage('${action.data}');`;
64
       return `zss_editor.insertImage('${action.data}');`;
65
+    case `${actions.insertEmoji}`:
66
+        return `zss_editor.insertEmoji('${action.data}');`;
65
     case `${actions.setSubscript}`:
67
     case `${actions.setSubscript}`:
66
       return `zss_editor.setSubscript();`;
68
       return `zss_editor.setSubscript();`;
67
     case `${actions.setSuperscript}`:
69
     case `${actions.setSuperscript}`:

+ 1
- 0
src/const.js 查看文件

34
   insertLink: 'INST_LINK',
34
   insertLink: 'INST_LINK',
35
   updateLink: 'UPDATE_LINK',
35
   updateLink: 'UPDATE_LINK',
36
   insertImage: 'INST_IMAGE',
36
   insertImage: 'INST_IMAGE',
37
+  insertEmoji: 'INST_EMOJI',
37
   setSubscript: 'subscript',
38
   setSubscript: 'subscript',
38
   setSuperscript: 'superscript',
39
   setSuperscript: 'superscript',
39
   setStrikethrough: 'strikeThrough',
40
   setStrikethrough: 'strikeThrough',

+ 16
- 1
src/editor.html 查看文件

1352
 				zss_editor.enabledEditingItems();
1352
 				zss_editor.enabledEditingItems();
1353
 			}
1353
 			}
1354
 
1354
 
1355
+			zss_editor.insertEmoji = function(url) {
1356
+				zss_editor.restorerange();
1357
+				document.execCommand('insertHTML', false, '<img class="emoji" src="' + encodeHtmlEntities(url) + '"/>');
1358
+				zss_editor.enabledEditingItems();
1359
+			}
1360
+
1355
 			zss_editor.insertImageBase64String = function(imageBase64String, alt) {
1361
 			zss_editor.insertImageBase64String = function(imageBase64String, alt) {
1356
 				zss_editor.restorerange();
1362
 				zss_editor.restorerange();
1357
 				var html = '<img src="data:image/jpeg;base64,'+encodeHtmlEntities(imageBase64String)+'" alt="'+encodeHtmlEntities(alt)+'" />';
1363
 				var html = '<img src="data:image/jpeg;base64,'+encodeHtmlEntities(imageBase64String)+'" alt="'+encodeHtmlEntities(alt)+'" />';
1683
 			#zss_editor_content {
1689
 			#zss_editor_content {
1684
 				font-family: Arial, Helvetica, sans-serif;
1690
 				font-family: Arial, Helvetica, sans-serif;
1685
 				color: #000;
1691
 				color: #000;
1686
-				width: 95%;
1692
+				width: calc(100% - 20px);
1687
 				-webkit-overflow-scrolling: touch;
1693
 				-webkit-overflow-scrolling: touch;
1688
 				overflow:auto;
1694
 				overflow:auto;
1689
 				padding-left: 10px;
1695
 				padding-left: 10px;
1690
 				padding-right: 10px;
1696
 				padding-right: 10px;
1697
+				line-height: 20px;
1691
 			}
1698
 			}
1692
 
1699
 
1693
 			#zss_editor_title {
1700
 			#zss_editor_title {
1722
 				padding-right: 10px;
1729
 				padding-right: 10px;
1723
 				display: none;
1730
 				display: none;
1724
 			}
1731
 			}
1732
+
1733
+			.emoji {
1734
+				height: 19.5px;
1735
+				width: 19.5px;
1736
+				line-height: 19.5px;
1737
+				display: inline-block;
1738
+				vertical-align: top;
1739
+			}
1725
 		</style>
1740
 		</style>
1726
 
1741
 
1727
 		<style type="text/css">
1742
 		<style type="text/css">