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

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

主要功能:

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

HTML:


 *使用了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 
function sendMsg() { 
 var msg = $(".chat-message"); 
 var msgVal = msg.val(); 
 var chatBox = $(".chat-box"); 
 if (msgVal) { 
  var msgAppend = "

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 function dialog(msg){ var replyArr = ["Hi, how's it going :)","I'm good, thx, U? :)"]; msg = msg.toLowerCase(); var time = new Date(); var hour = time.getHours(); var minute = time.getMinutes(); var currentTime = plusZero(hour) + ":" + plusZero(minute); var chatBox = $(".chat-box"); if(msg.indexOf("hello") != -1){ chatBox.append("

AI: " + replyArr[0] + "


"); } else if(msg.indexOf("how are you") != -1 || msg.indexOf("how are u") != -1){ chatBox.append("

AI: " + replyArr[1] + "


"); } else if(msg.indexOf("time") != -1){ chatBox.append("

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


"); } else {} } //add 0 if time number is <10 function plusZero(x){ if(x < 10){ x = "0" + x; } else { x = x; } return x; } //greeting by hour function timeGreeting(h){ var greeting = ["U need to sleep","Good morning","Lunch time now","Feel asleep? Have some coffee","Free time~Yeah","Good night"]; if(h>=0&&h<=6){ return greeting[0]; } else if(h>=7&&h<=10){ return greeting[1]; } else if(h>=11&&h<=13){ return greeting[2]; } else if(h>=14&&h<=18){ return greeting[3]; } else if(h>=19&&h<=21){ return greeting[4]; } else if(h>=22&&h<=23){ return greeting[5]; } else { return ""; } } //clear the chat box function clearChatBox() { $(".chat-box").html(""); }

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

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

你可能感兴趣的:(基于jQuery实现简单人工智能聊天室)