從`v2.1.0`版本開始,wangEditor支持使用**表情包**的方式來配置表情圖片。此前需要一個一個配置表情圖片的方式,我自己都覺得很難受,好在現在已經OK了。
----
**第一,表情包是什么鬼?**
這里的表情包,其實就是一段`js`代碼,總體看來是一個數組,數組內的每個元素都是一個對象,格式如下:
```js
// 整體看來是一個數組,數組每個元素都是一個對象
[
{
// icon 的屬性值時該表情的圖片地址,'icon'這個屬性名,也可以用'url'來代替
'icon': 'http://img.t.sinajs.cn/t35/style/images/common/face/ext/normal/60/horse2_thumb.gif',
// value 的屬性值是表情的『值』,即通過這個『值』即可對應到某個特定的表情
'value': '[草泥馬]'
},
{
'icon': '......',
'value': '...'
},
{
'icon': '......',
'value': '...'
}
]
```
你還可以參考一下新浪的表情包:https://api.weibo.com/2/emotions.json?source=1362404091 ,還有這個:http://yuncode.net/code/c_524ba520e58ce30
下文中所說的『表情包』需要的就是上述的一段js代碼而已。
---
**第二,通過 `editor.config.emotions` 自定義配置表情**
代碼如下,注意看注釋
```js
var editor = new wangEditor('editor-trigger');
// 配置自定義表情,在 create() 之前配置
editor.config.emotions = {
// 支持多組表情
// 第一組,id叫做 'default'
'default': {
title: '默認', // 組名稱
data: './emotions.data' // 服務器的一個json文件url,例如官網這里配置的是 http://www.wangeditor.com/wangEditor/test/emotions.data
},
// 第二組,id叫做'weibo'
'weibo': {
title: '微博表情', // 組名稱
data: [ // data 還可以直接賦值為一個表情包數組
// 第一個表情
{
'icon': 'http://img.t.sinajs.cn/t35/style/images/common/face/ext/normal/7a/shenshou_thumb.gif',
'value': '[草泥馬]'
},
// 第二個表情
{
'icon': 'http://img.t.sinajs.cn/t35/style/images/common/face/ext/normal/60/horse2_thumb.gif',
'value': '[神馬]'
}
// 下面還可以繼續,第三個、第四個、第N個表情。。。
]
}
// 下面還可以繼續,第三組、第四組、、、
};
editor.create();
```
----
**第三,可以使用 `editor.config.emotionsShow` 來配置顯示方式**
編輯器默認情況下將`editor.config.emotionsShow`賦值為`icon`,你也可以將該配置修改為`value`,如下代碼:
```js
var editor = new wangEditor('editor-trigger');
// 將顯示方式改為 value ,要在 create() 之前修改
editor.config.emotionsShow = 'value';
editor.create();
```
兩者有何區別呢?
當`editor.config.emotionsShow = 'icon'`時,插入的表情會顯示真正的圖片,獲取編輯器的源碼時,也會是一個圖片,如下圖:


當`editor.config.emotionsShow = 'value'`時,插入的表情會顯示`value`,獲取編輯器的源碼時,也會是`value`值,如下圖:


----
如果配置的表情圖標取不到圖片,瀏覽器的控制臺會有錯誤提示,注意查看。

- 關于wangEditor
- 遇到問題如何解決和提問【重要】
- 開始使用
- 下載
- 創建頁面
- 生成編輯器(使用ID)
- 生成編輯器(使用element)
- 調整尺寸
- 銷毀與恢復
- 一個頁面多個編輯器
- 內容處理
- 初始化內容
- 獲取內容
- 追加內容
- 清空內容
- 用 editor.$txt 做其他內容處理
- onchange事件
- 禁用/啟用
- 參數配置
- 自定義菜單
- 自定義顏色、字體、字號
- 自定義表情
- 切換語言
- 百度地圖key
- 菜單欄吸頂
- 配置全屏的z-index
- 關閉瀏覽器打印log
- 關閉過濾javascript
- 關閉粘貼過濾樣式
- 只粘貼純文本
- 插入代碼-配置默認語言
- 自定義編輯器樣式
- 自定義顏色
- 自定義菜單UI
- 自定義表格、引用、代碼的樣式
- 代碼高亮樣式
- 圖片上傳
- 使用前必讀
- 支持情況
- 配置說明
- log提示輔助排錯
- 后臺代碼示例
- C#
- java - 例1
- java - 例2
- php
- nodejs
- python
- 自定義上傳事件
- 集成plupload插件
- 集成七牛云存儲
- 跨域上傳
- 上傳圖片出錯時的解決步驟
- 使用模塊定義
- 使用require.js
- 使用seajs
- 使用webpack
- 插件開發
- 對象結構
- 常用API
- 全局API
- 對象API
- 基礎API
- 選區API
- 命令API
- 擴展一個菜單
- 『縮進』菜單
- 『行高』菜單
- 『插入符號』菜單
- 開發一個插件
- 常見問題
- 關于markdown
- 關于上傳附件
- 關于背景圖片
- 關于顯示壓縮圖片
- 集成到React
- 集成到angular
- 集成到vue.js
- 如何避免與項目中的css沖突
- xss過濾
- 如何插入視頻鏈接
- 關于mobile端編輯器
- 查看源碼第一行有空格