欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js編寫(xiě)簡(jiǎn)單的聊天室功能

 更新時(shí)間:2017年08月17日 09:26:10   作者:蒲小若  
這篇文章主要為大家詳細(xì)介紹了js編寫(xiě)簡(jiǎn)單的聊天室功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

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

聊天室要求:

1.不能發(fā)空消息
2.敏感字***顯示
3.圖片替換 開(kāi)心,尷尬
4.顯示聊天內(nèi)容和時(shí)間
5.每發(fā)一條信息,隨機(jī)顯示名稱(chēng),先把一些名稱(chēng)定義到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.圖片替換 開(kāi)心,尷尬</p> 
   <p>4.顯示聊天內(nèi)容和時(shí)間</p> 
   <p>5.每發(fā)一條信息,隨機(jī)顯示名稱(chēng),先把一些名稱(chēng)定義到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(){ 
   //通過(guò)調(diào)用randomName()函數(shù)來(lái)得到一個(gè)隨機(jī)的名字 
   var name = randomName(); 
   //通過(guò)調(diào)用randomColor()函數(shù)來(lái)得到一個(gè)隨機(jī)的顏色 
   var colorR = randomColor(); 
   //得到textarea中的內(nèi)容 
   var content = document.getElementById("content").value; 
   //判斷輸入內(nèi)容是否為空 
   if (content == "") { 
    alert("輸入內(nèi)容不能為空?。?!"); 
    return; 
   } 
   //通過(guò)正則表達(dá)式來(lái)獲取要替換的字符串 
   var regExp = /藏獨(dú)|臺(tái)獨(dú)|傻逼|你大爺/g; 
   var regExp1 = /開(kāi)心/g; 
   var regExp2 = /尷尬/g; 
//   var imgReplace = content.replace(regExp,"高興"); 
   //獲取開(kāi)心圖片路徑 
   var path1 = '<img src="img/chui.png"/>'; 
   //獲取尷尬圖片的路徑 
   var path2 = '<img src="img/mouse.png"/>'; 
   //敏感字替換; 
   content = content.replace(regExp,"***"); 
   //將開(kāi)心替換成開(kāi)心圖片的字符串; 
//   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; 
   //點(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í)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 如何讓頁(yè)面加載完成后執(zhí)行js

    如何讓頁(yè)面加載完成后執(zhí)行js

    本篇文章是對(duì)如何讓頁(yè)面加載完成后執(zhí)行js的解決方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • layui-laydate時(shí)間日歷控件使用方法詳解

    layui-laydate時(shí)間日歷控件使用方法詳解

    這篇文章主要為大家詳細(xì)介紹了layui-laydate時(shí)間日歷控件的使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • 解析原來(lái)瀏覽器原生支持JS Base64編碼解碼

    解析原來(lái)瀏覽器原生支持JS Base64編碼解碼

    這篇文章主要介紹了解析原來(lái)瀏覽器原生支持JS Base64編碼解碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • 詳談js中數(shù)組(array)和對(duì)象(object)的區(qū)別

    詳談js中數(shù)組(array)和對(duì)象(object)的區(qū)別

    下面小編就為大家?guī)?lái)一篇詳談js中數(shù)組(array)和對(duì)象(object)的區(qū)別。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-02-02
  • 提高網(wǎng)站信任度的技巧

    提高網(wǎng)站信任度的技巧

    網(wǎng)站信任度:一方面指瀏覽者對(duì)于站點(diǎn)的信任程度,另一方面指搜索引擎對(duì)于網(wǎng)站的信任值(TrustRank),網(wǎng)站信任度對(duì)于企業(yè)站點(diǎn)更為重要.在得到更高信任度的同時(shí),流量更容易轉(zhuǎn)化為實(shí)在的收入.
    2008-10-10
  • 使用JS+plupload直接批量上傳圖片到又拍云

    使用JS+plupload直接批量上傳圖片到又拍云

    本文詳細(xì)介紹了通過(guò)js+plupload實(shí)現(xiàn)了繞過(guò)服務(wù)器,向又拍云批量上傳圖片的解決方法,十分的巧妙,也節(jié)省了服務(wù)器資源,這里推薦給有需要的小伙伴。
    2014-12-12
  • JS代碼格式化和語(yǔ)法著色V2

    JS代碼格式化和語(yǔ)法著色V2

    JS代碼格式化和語(yǔ)法著色V2...
    2006-10-10
  • JS實(shí)現(xiàn)簡(jiǎn)潔、全兼容的拖動(dòng)層實(shí)例

    JS實(shí)現(xiàn)簡(jiǎn)潔、全兼容的拖動(dòng)層實(shí)例

    這篇文章主要介紹了JS實(shí)現(xiàn)簡(jiǎn)潔、全兼容的拖動(dòng)層的方法,實(shí)例分析了javascript鼠標(biāo)事件及頁(yè)面元素的操作技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-05-05
  • ECMAScript6中Map映射的基本概念與常用方法

    ECMAScript6中Map映射的基本概念與常用方法

    Map是ES6中新增的數(shù)據(jù)結(jié)構(gòu),Map類(lèi)似于對(duì)象,但普通對(duì)象的 key 必須是字符串或者數(shù)字,而 Map 的 key 可以是任何數(shù)據(jù)類(lèi)型,這篇文章主要給大家介紹了關(guān)于ECMAScript6中Map映射的基本概念與常用方法,需要的朋友可以參考下
    2021-07-07
  • 微信小程序 rich-text的使用方法

    微信小程序 rich-text的使用方法

    這篇文章主要介紹了 微信小程序 rich-text的使用方法的相關(guān)資料,這里提供屬性及方法并實(shí)現(xiàn)實(shí)例,幫助大家學(xué)習(xí)理解,需要的朋友可以參考下
    2017-08-08

最新評(píng)論