找到一个好玩的程序 发现不支持发送表情怎么办或者系统不支持表情

下面我提供一下我的表情支持思路 不需要后端

比如我们把一个表情定义为[emt]16[/emt] 16就代表表情图片名称 这样发布

然后渲染的时候我们就可以用replace替换掉16前后的字符

具体代码贴在下面了

1
2
3
4
5
6
7
8
9
10
11
12
<div id="biaoqing">[emt]16[/emt]</div>
<!--上面是显示区域-->

<script type="text/javascript">

// 替换代码为表情
window.onload=function(){
var div = document.getElementById('biaoqing');
var html = div.innerHTML;
div.innerHTML = html.replace(/(\[emt])/g,"<img src="+"/img/").replace(/(\[)/g,"").replace(/(\/emt])/g,".gif />");
}
</script>

如果渲染数据用的是接口怎么办呢?可以在拿到数据的时候遍历修改

1
2
3
4
5
6
7
let list = [
{content:"你好啊[emt]1[/emt]"},
{content:"你也好啊[emt]44[/emt]"}
]
for(let i = 0; i < list.length; i++){
list[i].content = list[i].content.replace(/(\[emt])/g,"<img src="+"/img/").replace(/(\[)/g,"").replace(/(\/emt])/g,".gif />")
}