<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Document</title> <style> *{margin: 0px;padding: 0px;} .div{ height: 550px; width: 300px; background:#ccc; text-align: center; margin-left: 50px; margin-top:10px; } .div div{ padding-top: 10px; } .content{ list-style: none; width: 260px; margin: 10px auto; height: 380px; color:black; font-size:14px; background: white; overflow: auto; } .content li{ text-align: left; margin:10px; } .text{ margin: 10px 0; width: 260px; height: 30px; } .submit{ width: 262px; height:30px; margin: 0px auto; border:none; background:lightblue; color:#fff; border-radius: 5px; } .submit:hover{ background:lightsalmon; } p{ height:40px; line-height: 40px; font-weight: bold; font-size:20px; background: yellowgreen; } </style> </head> <body> <div class="div"> <p>在线客服</p> <div> <ul class="content"></ul> </div> <textarea class="text"></textarea><br> <button class="submit">发表</button> </div> </body> <script type="text/javascript"> let content = document.querySelector('.content'); let text = document.querySelector('.text'); let submit = document.querySelector('.submit'); let num = 0; submit.onclick = function(){ if (num > 10){ content.innerHTML=""; } let value = text.value; let li = document.createElement("li"); li.innerHTML="游客:"+value; content.appendChild(li); let li1 = document.createElement("li"); setTimeout(function(){ li1.style.color="red"; let arr = ["您好,很高兴为您服务!","您能详情说下嘛,我不太清楚","不好意思,你能说明白些吗?","好海哦!","感觉人生达到了巅峰"]; let count = Math.round(Math.random()*arr.length)-1; console.log(count); li1.innerHTML = "客服:"+arr[count]; content.appendChild(li1); num ++; },2000) } </script> </html>
添加了回复等待时间,用setTimeOut()函数,有两个参数,第一个参数为函数,第二个为时间。本案例设置的为2S钟
根学习的案例一样添加了个计数器,在大于10条数据的时候进行清空。
样式有所改动,在鼠标放到发送按钮时,button背景色会切换。
数据添加多会出现样式混乱,为ul标签添加了overflow:auto,让超出部分自动有个侧边滚动条。
代码执行结果如下: