一聚教程网:一个值得你收藏的教程网站

热门教程

基于jQuery实现简单人工智能聊天室

时间:2022-06-25 17:15:52 编辑:袖梨 来源:一聚教程网

花了俩小时折腾出来的,jQuery人工智能聊天室长这样:

主要功能:

1.当然是聊天啦~点击飞机按钮或者回车可以发送消息到面板。
2.输入特定的内容,系统会给你相应的回复(这里我只设置了Hello,How are you和询问时间的自动回复)。
3.点击叉叉可以清除面板上的所有聊天记录。
4.问时间的时候,根据现在的时间,会给你相应的不同的回复,比如现在是22-23点,系统会回复你“good night”。
5.随着聊天的进行,聊天面板右侧的滚动条会一直维持在最底部。

HTML:

 代码如下 复制代码

 

 

 

 

 

 

 

 

 

 

 

 

 


 Designed By

 

 Alen Hu

 

 *使用了Bootstrap3框架。

JQuery:

 代码如下 复制代码

$(document).ready(function() {

  

 //send the message by click

 $(".chat-send").click(sendMsg);

  

 //press enter to send

 $("form").keypress(function(event) {

  if(event.keyCode === 13) {

   event.preventDefault();

   sendMsg();

  }

 });

  

 //clear the chat box

 $(".chat-clear").click(clearChatBox);

});

  

//send message to chat box

functionsendMsg() {

 varmsg = $(".chat-message");

 varmsgVal = msg.val();

 varchatBox = $(".chat-box");

 if(msgVal) {

  varmsgAppend ="

You: "+ msgVal +"


";

  chatBox.append(msgAppend);

 }else{}

  

 //dialog reply

 dialog(msgVal);

  

 //empty input

 msg.val("");

  

 //keep the scroll in bottom

 chatBox.scrollTop(chatBox[0].scrollHeight);

}

  

//set up the AI dialog

functiondialog(msg){

 varreplyArr = ["Hi, how's it going :)","I'm good, thx, U? :)"];

 msg = msg.toLowerCase();

 vartime =newDate();

 varhour = time.getHours();

 varminute = time.getMinutes();

 varcurrentTime = plusZero(hour) +":"+ plusZero(minute);

  

 varchatBox = $(".chat-box");

  

 if(msg.indexOf("hello") != -1){

  chatBox.append("

AI: "+ replyArr[0] +"


");

 }

 elseif(msg.indexOf("how are you") != -1 || msg.indexOf("how are u") != -1){

  chatBox.append("

AI: "+ replyArr[1] +"


");

 }

 elseif(msg.indexOf("time") != -1){

  chatBox.append("

AI: Current Time: "+ currentTime +". "+ timeGreeting(hour) +"~ :)


");

 }

 else{}

}

  

//add 0 if time number is <10

functionplusZero(x){

 if(x < 10){

  x ="0"+ x;

 }

 else{

  x = x;

 }

 returnx;

}

  

//greeting by hour

functiontimeGreeting(h){

 vargreeting = ["U need to sleep","Good morning","Lunch time now","Feel asleep? Have some coffee","Free time~Yeah","Good night"];

  

 if(h>=0&&h<=6){

  returngreeting[0];

 }

 elseif(h>=7&&h<=10){

  returngreeting[1];

 }

 elseif(h>=11&&h<=13){

  returngreeting[2];

 }

 elseif(h>=14&&h<=18){

  returngreeting[3];

 }

 elseif(h>=19&&h<=21){

  returngreeting[4];

 }

 elseif(h>=22&&h<=23){

  returngreeting[5];

 }

 else{

  return"";

 }

}

  

//clear the chat box

functionclearChatBox() {

 $(".chat-box").html("");

}

DEMO在这儿,欢迎FORK:AI Chat Box

热门栏目