• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > HTML5仿微信聊天界面和朋友圈代码

HTML5仿微信聊天界面和朋友圈代码

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含HTML5,h5,代码等相关知识,匿名希望在学习及工作中可以帮助到您
这几天使用H5开发了一个仿微信聊天前端界面,尤其微信底部编辑器那块处理的很好,使用HTML5来开发,虽说功能效果并没有微信那么全,但是也相当不错了,可以发送消息、表情,发送的消息自动回滚定位到底部,另外可以对消息、图片、视频有不同的右键处理提示,还有打赏、占屏等操作。

html代码片段:


<!--BEGIN 打赏-->
<p class="js_dialog" id="J_Dialog_dashang" style="display: none;">
    <!--<p class="weui-mask"></p>-->
    <p class="weui-dialog">
        <i class="weui-xclose"></i>
        <p class="weui-dialog__bd">
            <!-- //打赏模板区-->
            <p class="ws__popup-template">
                <h2 class="hdTit">为喜欢的节目打赏</h2>
                <p class="item flexbox">
                    <input class="ipt-txt align-l flex1" type="text" name="dschooseProgram" placeholder="选择打赏节目" readonly />
                </p>
                <p class="item item-area">
                    <textarea class="describe" name="content" placeholder="输入打赏语,30字以内(选填)"></textarea>
                </p>
                <p class="item item-gift" id="J__chooseGift">
                    <p class="gift flexbox selected" data-gift="001">
                        <label class="txt"><span>豪车</span><em class="time">霸屏50秒</em></label>
                        <span class="amount">¥<em>12</em> <i class="chkbox"></i></span>
                    </p>
                    <p class="gift flexbox" data-gift="002">
                        <label class="txt"><span>动人玫瑰</span><em class="time">霸屏20秒</em></label>
                        <span class="amount">¥<em>8</em> <i class="chkbox"></i></span>
                    </p>
                </p>
            </p>
        </p>
        <p class="weui-dialog__ft">
            <a href="javascript:;" class="weui-dialog__btn weui-dialog__btn_primary" style="background: #ff4400; border-radius: 4px; color: #fff;">支付 <span>¥<em class="moneyNum">12</em></span> 打赏</a>
        </p>
    </p>
</p>
<!--END 打赏-->

Javascript代码片段:


/* ——聊天编辑器区域 */
var $editor = $(".J__editorText"), editor = $editor[0];
var $face = $(".emotion-area dd img");
$face.on("click", function(e){
    if($(this).hasClass("face")){ //图像
        var img = $(this)[0].cloneNode(true);
        editor.focus();
        setTimeout(function(){
            var range, node;
            if(document.selection && document.selection.createRange){
                document.selection.createRange().pasteHTML(img);
            }else if(window.getSelection && window.getSelection().getRangeAt){
                range = window.getSelection().getRangeAt(0);
                range.insertNode(img);
                range.collapse(false);
                var sel = window.getSelection();
                sel.removeAllRanges();
                sel.addRange(range);
            }
        }, 16);
    }else if($(this).hasClass("del")){ //删除
        editor.focus();
        range = window.getSelection().getRangeAt(0);
        range.collapse(false);
        var sel = window.getSelection();
        sel.removeAllRanges();
        sel.addRange(range);
        document.execCommand("delete");
    }
});
//...格式化编辑器包含标签
editor.addEventListener("focus", function(evt) {
    surrounds()
}, true);
editor.addEventListener("input", function(evt) {
    surrounds();
}, false);
function surrounds() {
    setTimeout(function () { //chrome
        var sel = window.getSelection();
        var anchorNode = sel.anchorNode;
        if (!anchorNode) return;
        if (sel.anchorNode === editor ||
            (sel.anchorNode.nodeType === 3 && sel.anchorNode.parentNode === editor)) {
            var range = sel.getRangeAt(0);
            var p = document.createElement("p");
            range.surroundContents(p);
            range.selectNodeContents(p);
            range.insertNode(document.createElement("br")); //chrome
            sel.collapse(p, 0);
            (function clearBr() {
                var elems = [].slice.call(editor.children);
                for (var i = 0, len = elems.length; i < len; i++) {
                    var el = elems[i];
                    if (el.tagName.toLowerCase() == "br") {
                        editor.removeChild(el);
                    }
                }
                elems.length = 0;
            })();
        }
    }, 0);
}
//...滚动到聊天内容底部
function scrollToBottom(){
    $('.ws__chatMsg-panel').animate({scrollTop: $("#J__chatMsgList").height()}, 300);
}

运行效果:

相关推荐:

AngularJS仿微信图片手势缩放代码

jquery仿微信聊天界面实例分享

实例讲解CSS3仿微信聊天气泡的方法

以上就是HTML5仿微信聊天界面和朋友圈代码的详细内容,更多请关注微课江湖其它相关文章!

您可能想查找下面的文章:

  • HTML5知识点总结
  • HTML5的本地存储
  • HTML5本地存储之IndexedDB
  • Html5实现文件异步上传功能
  • Html5新标签datalist实现输入框与后台数据库数据的动态匹配
  • 详解HTML5 window.postMessage与跨域
  • HTML5拖放API实现拖放排序的实例代码
  • 解决html5中video标签无法播放mp4问题的办法
  • HTML5新特性 多线程(Worker SharedWorker)
  • Html5新增标签有哪些

相关文章

  • 2018-12-03深入解析HTML5的IndexedDB索引数据库_html5教程技巧
  • 2018-12-03HTML5 canvas画图并保存成图片的jcanvas插件_html5教程技巧
  • 2017-08-06html5-websocket基于远程方法调用的数据交互实现
  • 2018-12-03利用HTML5的一个特性- DeviceOrientation来实现手机上摇一摇功能
  • 2018-12-03HTML5学习笔记简明版(10):废弃的元素和属性
  • 2018-12-03带你了解css中的3D效果
  • 2018-12-03关于老版本的浏览器不兼容H5和C3的处理方法
  • 2017-08-06HTML5 placeholder(空白提示)属性介绍
  • 2018-12-03移动端单屏滚动网页怎么实现,网页里有CSS3动画效果?
  • 2018-12-03HTML5plus移动应用的开发实例分享

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • HTML5实现一个图片滤镜效果的示例代码分享
    • HTML5全屏(Fullscreen)API详细介绍_html5教程技巧
    • HTML5在a标签内放置块级元素示例代码_html5教程技巧
    • HTML5 拖放功能实现代码
    • canvas实践小实例二 —— 扇形
    • html5 worker 实例(二) 图片变换效果
    • 小强的HTML5移动开发之路(10)——在线画板
    • HTML5 canvas实现中奖转盘的实例代码
    • HTML5重塑Web世界它将如何改变互联网_html5教程技巧
    • 用HTML5的canvas实现一个炫酷时钟效果

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有