博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
h5移动端聊天室|仿微信界面聊天室|h5多人聊天室
阅读量:6098 次
发布时间:2019-06-20

本文共 2250 字,大约阅读时间需要 7 分钟。

 今年的FIFA世界杯甚是精彩,最近兴致高涨就利用HTML5开发了一个手机端仿微信界面聊天室,该h5聊天室采用750px全新伸缩flex布局,以及使用rem响应式配合fontsize.js,页面弹窗则是使用自己开发的;编辑器部分由原先的单一表情新增为动图表情,实现了消息、表情发送 | 大图、视频效果预览 | 仿微信红包、打赏等微交互功能。奋斗

案例截图:

 

// ...滚动聊天区底部function wchat_ToBottom(){    //$(".wc__chatMsg-panel").animate({scrollTop: $("#J__chatMsgList").height()}, 0);    $(".wc__slimscroll2").slimscroll({        scrollBy: $("#J__chatMsgList").height(),        height: 'auto'    });}// ...表情、选择区切换$(".wc__editor-panel").on("click", ".btn", function(){    var that = $(this);    $(".wc__choose-panel").show();    if (that.hasClass("btn-emotion")) {        $(".wc__choose-panel .wrap-emotion").show();        $(".wc__choose-panel .wrap-choose").hide();        // 初始化swiper表情        !emotionSwiper && $("#J__emotionFootTab ul li.cur").trigger("click");    } else if (that.hasClass("btn-choose")) {        $(".wc__choose-panel .wrap-emotion").hide();        $(".wc__choose-panel .wrap-choose").show();    }    wchat_ToBottom();});// ...处理编辑器信息// 格式化编辑器包含标签_editor.addEventListener("click", function () {    //$(".wc__choose-panel").hide();}, true);_editor.addEventListener("focus", function(){    surrounds();}, true);_editor.addEventListener("input", function(){    surrounds();}, false);// 发送信息var $chatMsgList = $("#J__chatMsgList");function isEmpty(){    var html = $editor.html();    html = html.replace(/
/ig, "\r\n"); html = html.replace(/<[^img].*?>/ig, ""); html = html.replace(/ /ig, ""); return html.replace(/\r\n|\n|\r/, "").replace(/(?:^[ \t\n\r]+)|(?:[ \t\n\r]+$)/g, "") == "";}$(".J__wchatSubmit").on("click", function(){ // 判断内容是否为空 if(isEmpty()) return; var html = $editor.html(); var reg = /(http:\/\/|https:\/\/)((\w|=|\?|\.|\/|&|-)+)/g; html = html.replace(reg, "
$1$2"); var msgTpl = [ '
  • \
    \

    Nice奶思

    \
    '+ html +'
    \
    \ \
  • ' ].join(""); $chatMsgList.append(msgTpl); // 清空聊天框并获取焦点(处理输入法和表情 - 聚焦) if(!$(".wc__choose-panel").is(":hidden")){ $editor.html(""); }else{ $editor.html("").focus().trigger("click"); } wchat_ToBottom();});

    转载于:https://www.cnblogs.com/xiaoyan2017/p/9266179.html

    你可能感兴趣的文章
    Ajax异步
    查看>>
    好记性不如烂笔杆-android学习笔记<十六> switcher和gallery
    查看>>
    JAVA GC
    查看>>
    3springboot:springboot配置文件(外部配置加载顺序、自动配置原理,@Conditional)
    查看>>
    图解SSH原理及两种登录方法
    查看>>
    查询个人站点的文章、分类和标签查询
    查看>>
    基础知识:数字、字符串、列表 的类型及内置方法
    查看>>
    JSP的隐式对象
    查看>>
    JS图片跟着鼠标跑效果
    查看>>
    Leetcode 3. Longest Substring Without Repeating Characters
    查看>>
    416. Partition Equal Subset Sum
    查看>>
    app内部H5测试点总结
    查看>>
    [TC13761]Mutalisk
    查看>>
    while()
    查看>>
    常用限制input的方法
    查看>>
    IIS7下使用urlrewriter.dll配置
    查看>>
    并行程序设计学习心得1——并行计算机存储
    查看>>
    C++ 迭代器运算
    查看>>
    【支持iOS11】UITableView左滑删除自定义 - 实现多选项并使用自定义图片
    查看>>
    【算法笔记】多线程斐波那契数列
    查看>>