這個(gè)聊天室寫的特別簡(jiǎn)易,比較適合剛開始學(xué)習(xí)js的同學(xué)借鑒,當(dāng)然,寫的不好,也希望諸位大神可以進(jìn)行批評(píng)改正。

為任丘等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及任丘網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都做網(wǎng)站、網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)、任丘網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
聊天室要求:
1.不能發(fā)空消息
2.敏感字***顯示
3.圖片替換 開心,尷尬
4.顯示聊天內(nèi)容和時(shí)間
5.每發(fā)一條信息,隨機(jī)顯示名稱,先把一些名稱定義到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="點(diǎn)擊發(fā)送" onclick="sendMessage()" />
</div>
</div>
<div class="left right">
<p>1.不能發(fā)空消息</p>
<p>2.敏感字***顯示</p>
<p>3.圖片替換 開心,尷尬</p>
<p>4.顯示聊天內(nèi)容和時(shí)間</p>
<p>5.每發(fā)一條信息,隨機(jī)顯示名稱,先把一些名稱定義到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(){
//通過調(diào)用randomName()函數(shù)來得到一個(gè)隨機(jī)的名字
var name = randomName();
//通過調(diào)用randomColor()函數(shù)來得到一個(gè)隨機(jī)的顏色
var colorR = randomColor();
//得到textarea中的內(nèi)容
var content = document.getElementById("content").value;
//判斷輸入內(nèi)容是否為空
if (content == "") {
alert("輸入內(nèi)容不能為空!!!");
return;
}
//通過正則表達(dá)式來獲取要替換的字符串
var regExp = /藏獨(dú)|臺(tái)獨(dú)|傻逼|你大爺/g;
var regExp1 = /開心/g;
var regExp2 = /尷尬/g;
// var imgReplace = content.replace(regExp,"高興");
//獲取開心圖片路徑
var path2 = '<img src="img/chui.png"/>';
//獲取尷尬圖片的路徑
var path3 = '<img src="img/mouse.png"/>';
//敏感字替換;
content = content.replace(regExp,"***");
//將開心替換成開心圖片的字符串;
// txtReplace(content);
var imgReplace = content.replace(regExp1,path2);
// alert(imgReplace);
//將尷尬替換成尷尬圖片的字符串;
imgReplace = imgReplace.replace(regExp2,path3);
// alert(imgReplace);
var chatContent = "<span>"+ name + ":" + "</span>" + " " + imgReplace;
// 字符串拼接聊天記錄
chatContents =chatContents + chatContent + " " + loadTime() +"<br/>";
document.getElementById("chatList").innerHTML = chatContents;
//點(diǎn)擊發(fā)送后,textarea中的內(nèi)容設(shè)為空
document.getElementById("content").value = "";
var txtColor = document.getElementsByTagName("span")[count];
count++;
//設(shè)置span的隨機(jī)顏色
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>以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。
網(wǎng)站名稱:js編寫簡(jiǎn)單的聊天室功能
網(wǎng)頁(yè)地址:http://chinadenli.net/article14/jpshde.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、網(wǎng)站策劃、面包屑導(dǎo)航、App設(shè)計(jì)、自適應(yīng)網(wǎng)站、手機(jī)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)