js编写简单的聊天室功能

这个聊天室写的特别简易,比较适合刚开始学习js的同学借鉴,当然,写的不好,也希望诸位大神可以进行批评改正。

聊天室要求:

1.不能发空消息

2.敏感字***显示

3.图片替换 开心,尴尬

4.显示聊天内容和时间

5.每发一条信息,随机显示名称,先把一些名称定义到array里面

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title></title>

<style type="text/css">

*{

box-sizing: border-box;

}

.left{

float: left;

width: 20%;

height: 650px;

color: red;

border: 1px solid red;

border-right: 20px solid cornflowerblue;

}

.center{

position: relative;

float: left;

width: 60%;

height: 650px;

border: 1px solid darkcyan;

}

.chatList{

width: 100%;

height: 500px;

overflow-y: scroll;

}

.bottom{

position: absolute;

width: 100%;

height: 150px;

left: 0;

bottom: 0;

background: skyblue;

}

.bottom textarea{

width: 70%;

height: 100%;

font-size: 18px;;

vertical-align: middle;

border: 1px solid red;

background: blanchedalmond;

}

.bottom input{

width: 80px;

height: 40px;

margin-left: 30px;

}

.right{

float: right;

color: #000000;

border-right: 0;

border-left: 20px solid cornflowerblue;

}

</style>

</head>

<body onload="loadTime()">

<div class="left" id="left">

</div>

<div class="center" id="center">

<div class="chatList" id="chatList">

</div>

<div class="bottom">

<textarea id="content" name="content" ></textarea>

<input type="button" name="send" id="send" value="点击发送" onclick="sendMessage()" />

</div>

</div>

<div class="left right">

<p>1.不能发空消息</p>

<p>2.敏感字***显示</p>

<p>3.图片替换 开心,尴尬</p>

<p>4.显示聊天内容和时间</p>

<p>5.每发一条信息,随机显示名称,先把一些名称定义到array里面</p>

</div>

</body>

<script type="text/javascript">

// document.getElementById("chatList").scrollHeight;

/*

添加敏感字替换成**---8.10

* */

function loadTime(){

var time = new Date();

var hours = (time.getHours()).toString();

if(hours.length < 2){

hours = "0" + hours;

}

var minutes = (time.getMinutes()).toString();

if(minutes.length < 2){

minutes = "0" + minutes;

}

var seconds = (time.getSeconds()).toString();

if(seconds.length < 2){

seconds = "0" + seconds;

}

var timeReturn = hours + ":" + minutes + ":" + seconds;

document.getElementById("left").innerHTML = timeReturn;

return timeReturn;

}

setInterval("loadTime()",1000);

var chatContents = "";

var count = 0;

function sendMessage(){

//通过调用randomName()函数来得到一个随机的名字

var name = randomName();

//通过调用randomColor()函数来得到一个随机的颜色

var colorR = randomColor();

//得到textarea中的内容

var content = document.getElementById("content").value;

//判断输入内容是否为空

if (content == "") {

alert("输入内容不能为空!!!");

return;

}

//通过正则表达式来获取要替换的字符串

var regExp = /藏独|台独|傻逼|你大爷/g;

var regExp1 = /开心/g;

var regExp2 = /尴尬/g;

// var imgReplace = content.replace(regExp,"高兴");

//获取开心图片路径

var path1 = '<img src="img/chui.png"/>';

//获取尴尬图片的路径

var path2 = '<img src="img/mouse.png"/>';

//敏感字替换;

content = content.replace(regExp,"***");

//将开心替换成开心图片的字符串;

// txtReplace(content);

var imgReplace = content.replace(regExp1,path1);

// alert(imgReplace);

//将尴尬替换成尴尬图片的字符串;

imgReplace = imgReplace.replace(regExp2,path2);

// alert(imgReplace);

var chatContent = "<span>"+ name + ":" + "</span>" + " " + imgReplace;

// 字符串拼接聊天记录

chatContents =chatContents + chatContent + " " + loadTime() +"<br/>";

document.getElementById("chatList").innerHTML = chatContents;

//点击发送后,textarea中的内容设为空

document.getElementById("content").value = "";

var txtColor = document.getElementsByTagName("span")[count];

count++;

//设置span的随机颜色

txtColor.style.color = colorR;

}

function randomName(){

var i = parseInt(Math.random() * (6 - 0 + 1) + 0);

var arrName = new Array("果果","六六","格格","明明","小花","兰兰","花花");

return arrName[i];

}

function randomColor(){

var r = parseInt(Math.random() * (255 - 0 + 1) + 0).toString(16);

if(r.length < 2){

r = "0" + r;

}

var g = parseInt(Math.random() * (255 - 0 + 1) + 0).toString(16);

if(g.length < 2){

g = "0" + g;

}

var b = parseInt(Math.random() * (255 - 0 + 1) + 0).toString(16);

if(b.length < 2){

b = "0" + b;

}

return "#" + r + g + b;

}

</script>

</html>

 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

以上是 js编写简单的聊天室功能 的全部内容, 来源链接: utcz.com/z/329368.html

回到顶部