美文网首页前端社团程序员
网页聊天室之qq表情支持

网页聊天室之qq表情支持

作者: 淡就加点盐 | 来源:发表于2016-10-22 19:38 被阅读218次

显示效果图

Paste_Image.png

1. 下载 jQuery QQ表情插件 jquery.qqFace.js

下载链接 http://www.jq22.com/jquery-info365
下载文件中加入了jquery-browser.js,低于jquery 1.9.0版本的可以不调用
将表情包放在 public/images 中

2. 使用方法

HTML
首先在html页面的head中引入jQuery库文件和QQ表情插件jquery.qqFace.js文件。

<script type="text/javascript" src="jquery.min.js">
</script> <script type="text/javascript" src="jquery.qqFace.js"></script>
  <!--qq表情-->
<div class="emotion"></div>
<form action="">
    <div class="send-bd">
        <textarea class="textarea" id="msg" name="msg" required></textarea>
        <button type="submit" class="btn btn-primary pull-right" id="sendBtn">发送</button>
    </div>
</form>

JS
点击页面输入框下方那个笑脸时,触发调用qqface表情插件

// qq表情
$('#emotion').qqFace({   //表情转换
    id: 'facebox',  //表情盒子的ID
    assign: 'msg',  //给那个id为msg的控件赋值
    path: 'images/face/' //表情存放的路径
});

当选择表情图片后,输入框中会插入一段如[em_5]之类的代码,代表插入的表情图片,实际应用中,点提交按钮后应该将这段表情代码连同其他内容发送给对方并保存到数据库中。而在页面显示的时候,我们应该将表情代码替换成真正的图片显示在页面上

// 匹配表情字符
function replace_em(str) {
    str = str.replace(/\</g, '<');
    str = str.replace(/\>/g, '>');
    str = str.replace(/\n/g, '<br/>');
    str = str.replace(/\[em_([0-9]*)\]/g, '<img src="images/face/$1.gif" border="0" />');
    return str;
}

在发送给对方时直接emit带表情代码的消息,保存到数据库也是:

socket.emit('chat message', msg);
doAddMsg(0, data.ctn, data.from, data.to);

客户端接收到消息以及显示离线消息、取出聊天消息时匹配表情字符:

var html = $.format(FROM_MSG, replace_em(data.msg));

相关文章

  • 网页聊天室之qq表情支持

    显示效果图 1. 下载 jQuery QQ表情插件 jquery.qqFace.js 下载链接 http://ww...

  • 印象日照(下集)

    在360和QQ大战的时候,我媳妇支持360,我毅然支持QQ,原因很简单,我命运真正的转折点,其实就是通过QQ聊天室...

  • 问答词库

    支持变量: [@qq] @提问者 [qq] 提问者QQ [name] 提问者Q名 [bq数字] 经典表情,例子...

  • 这些梗知道15个就说明你老了!

    • 熊猫烧香 • 联众世界 • 新浪聊天室、QQ秀聊天室(~^6 可以让字变粉红色) • QQ家园 • 7456!...

  • 聊天室之表情发送

    表情图片渲染 将表情包放置在public/img路径下,遍历文件渲染到前端界面 表情图片获取 此时点击表情符号会显...

  • 用QQ表情做网页素材 【图文】

    第一步 先把图片发出去,然后点击图片右键点举报(之后请记得关闭举报框): 直接拖动图片到你想要保存的文件夹里: 修...

  • MFC&Python_QQIM

    QQ即时通讯及聊天室 实现功能:1、客户端可以和服务端进行通讯2、服务端支持多人聊天实现聊天室功能3、界面的友好度...

  • 超级表情大全

    技术支持: QQ:786709337 邮箱:786709337@qq.com 微信公众号:唯美应用大全 超级表情大...

  • GIF表情包-表情制作技术支持网址

    GIF表情包-表情制作技术支持 如果有使用问题,请联系邮箱: 3401987894@qq.com

  • 单枪匹马撸个聊天室, 支持Web/Android/iOS三端

    单枪匹马撸个聊天室, 支持Web/Android/iOS三端 单枪匹马撸个聊天室, 支持Web/Android/i...

网友评论

    本文标题:网页聊天室之qq表情支持

    本文链接:https://www.haomeiwen.com/subject/leehuttx.html