js模拟群聊场景-聊天信息动态出现效果

  制作H5页面,有时候会有个聊天场景这样的效果,对话聊天信息不断的有序弹出。

步骤:

1.先弄出个具有全部聊天信息记录的静态页面;

2.保留最外边的大框架,我这里是div标签,其余聊天记录先注释;

3.写js,因为是有序的出现,所以需要使用定时器来实现;

部分代码如下(样式未加):

<div class="chartCon" id="chartCon"></div>
$(function () {
    //群聊头像、名字、内容 start
    var array = [
        {
            content: "2016年10月"//群聊时间
        },
        {
            content: "zhl_cafe_noir加入群聊"//进群提示
        },
        {
            headImg: "images/老三.png",//头像
            name: "老三",//昵称
            content: "你们啥时候建了个群啊?"//聊天内容
        },
        {
            headImg: "images/老二.png",
            name: "老二",
            content: "在你不知道的时候,哈哈哈"
        }];
    //群聊头像、名字、内容 end
    //每隔0.5秒有序显示一条群聊信息 start
    var i = 0;
    function massageShow() {
        switch(i)
        {
            case 0:
            $("#chartCon").append("<div><span>"+array[i].content+"</span></div>");
                i++;
                break;
            case 1:
                $("#chartCon").append("<div><span>"+array[i].content+"</span></div>");
                i++;
                break;
            case 2:
                $("#chartCon").append("<div><img src='"+array[i].headImg+"'/><div>"+array[i].name+"</div><div>"+array[i].content+"</div></div>");
                i++;
                break;
            case 3:
                $("#chartCon").append("<div><img src='"+array[i].headImg+"'/><div>"+array[i].name+"</div><div>"+array[i].content+"</div></div>");
                i++;
                break;
            case 4:
                $("#chartCon").append("<div><img src='"+array[i].headImg+"'/><div>"+array[i].name+"</div><div>"+array[i].content+"</div></div>");
                i++;
                var c = window.document.body.scrollHeight;
                window.scroll(0,c);
                clearInterval(t); //清除定时器
                break;
        }
    }
   var t=setInterval(massageShow,500);
   //每隔0.5秒有序显示一条群聊信息 end
});

tip:switch case append()里面的内容是步骤2注释掉的,其中的某些信息修改为对应的array里面的内容。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Uniapp中实现聊天群聊,你可以使用WebSocket来实现实时通信。以下是一些步骤和关键点供参考: 1. 在Uniapp项目中创建一个WebSocket连接,与服务器建立连接。 2. 在用户进入聊天页面时,发送加入群聊的请求到服务器。 3. 当服务器接收到加入群聊请求后,将该用户加入到相应的群聊中。 4. 用户在聊天框中输入消息时,将消息发送到服务器。 5. 服务器收到消息后,将消息广播给所有在该群聊中的用户。 6. 在前端,通过监听WebSocket消息事件,接收服务器发来的消息,并将其显示在聊天框中。 7. 当用户离开聊天页面时,发送离开群聊的请求到服务器。 8. 服务器收到离开群聊请求后,将该用户从相应的群聊中移除。 下面是一个简单的示例代码,展示了如何使用WebSocket在Uniapp中实现聊天群聊: ```javascript // 在聊天页面中建立WebSocket连接 let socket = new WebSocket('ws://your-server-address'); socket.onopen = function() { // 发送加入群聊请求 socket.send('join_group'); }; socket.onmessage = function(event) { // 接收服务器发来的消息,并展示在聊天框中 let message = event.data; // ... }; // 监听发送按钮的点击事件 // 当用户发送消息时,将消息发送到服务器 function sendMessage() { let message = 'user input message'; socket.send(message); } // 监听页面离开事件 // 当用户离开聊天页面时,发送离开群聊请求 window.addEventListener('beforeunload', function() { socket.send('leave_group'); }); ``` 请注意,以上是一个基本的实现思路,具体的实现方式可能会根据你的后端架构和需求略有不同。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值