聊天对话框

*{font-size: 14px; padding:0; margin:0;}

.main{

position: relative;

margin: 20px auto;

border: 1px solid steelblue;

width: 430px;

height: 400px;

}

.msgInput{

display: block;

width: 406px;

height: 60px;

margin: 10px auto;

}

.sendbtn{

position: absolute;

width: 100px;

height: 29px;

bottom: 5px;

right: 10px;

}

.content{

list-style: none;

width: 410px;

height: 280px;

margin: 5px auto;

border: 1px dotted #D1D3D6;

overflow-y: scroll;

}

.msgContent{

width:auto;

max-width: 250px;

height: auto;

word-break: break-all;

margin: 5px;

padding: 3px;

border-radius: 5px;

}

.content .left{

float: left;

text-align: left;

background-color: lightgrey;

}

.content .right{

float: right;

text-align: right;

background-color: yellowgreen;

}

window.οnlοad=function(){

var input = document.getElementById('msg_input');//查找缓存

document.getElementById('sendbtn').οnclick=function () {

//var input1 = document.getElementById('msg_input');//

//input0

sendMsg();

}

//快捷键 发送

document.onkeypress = function (event) {

var e = event || window.event;

var keycode = e.keyCode || e.which;

console.log(e)

if( keycode==10){//判断同时按下ctrl 和enter

sendMsg()

}

}

function sendMsg() {

var input = document.getElementById('msg_input');//查找缓存

var ul = document.getElementById('content');

var newLi = document.createElement('li');

newLi.innerHTML = input.value;

newLi.className = 'msgContent right';

ul.appendChild(newLi);

var div = document.createElement('div');

div.style = 'clear:both';

ul.appendChild(div);

ajax({

url:'http://jisuznwd.market.alicloudapi.com/iqa/query?question='+input.value,

success:function (res) {

// console.log(res)

var obj = JSON.parse(res);

console.log(obj)

var array = obj.result.content;

// var zhengzhou = array[0];

var tmp = array;

// var tmp = '温度:'+zhengzhou.day_air_temperature+','+zhengzhou.day_weather;

console.log(tmp)

var newLi = document.createElement('li');

newLi.innerHTML = tmp;

newLi.className = 'msgContent left';

ul.appendChild(newLi);

var div = document.createElement('div');

div.style = 'clear:both';

ul.appendChild(div);

input.value = '';

newLi.scrollIntoView();//将元素滚动到可见位置

}

})

input.value = '';

newLi.scrollIntoView();//将元素滚动到可见位置

}

}

function ajax(obj) {

//?lastCursor=6610&pageSize=10

// var url = 'reg.php';

var xhr = null;

if(window.ActiveXObject){

xhr = new ActiveXObject('Microsoft.XMLHTTP')

}else{

xhr = new XMLHttpRequest();

}

// $username = $_REQUEST['username'];

// $password = $_REQUEST['password'];

//打开与服务器的连接

if(obj.method){

xhr.open(obj.method,obj.url,true);

}else{

xhr.open('get',obj.url,true);

}

xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");

xhr.setRequestHeader("Authorization","APPCODE 3e9dfb924f464e9593a95f9d2bbf4348")

// {username:'zhangsa',password:123123}

// sendData = encodeURIComponent(sendData);

// 发送请求

//console.log(res);

//回调函数

xhr.onreadystatechange = function () {

// console.log(xhr.readyState)

if(xhr.readyState == 4){

//数据接收完毕

if(xhr.status == 200){

// console.log('请求成功',xhr.responseText)

if(obj.success){

obj.success(xhr.responseText)

}

}else{

// console.log(xhr.status,'请求出错')

if(obj.failure){

obj.failure('请求失败')

}

}

}

}

// var sendData = 'username=zhangsan&password=123456';

if( obj.method == undefined ||obj.method.toLowerCase() =='get'){

xhr.send(null);//

}else{

xhr.send(obj.params);//

}

}

  • hello?
  • hello
  • hi
  • hehe
  • goodbye
  • 。。。。
  • sdfasdsadfd fasd fasd fasdfasdfasdf
  • 哈哈

发送

html做一个聊天输入框,js实现简易聊天对话框相关推荐

  1. 《基于Node.js实现简易聊天室系列之详细设计》

    一个完整的项目基本分为三个部分:前端.后台和数据库.依照软件工程的理论知识,应该依次按照以下几个步骤:需求分析.概要设计.详细设计.编码.测试等.由于缺乏相关知识的储备,导致这个Demo系列的文章层次 ...

  2. 使用原生HTML、CSS、JS实现简易聊天框

    使用原生HTML实现简易聊天框. 1.第一种方式 <!DOCTYPE html> <html lang="en"> <head><meta ...

  3. 用html编写一个红绿灯,利用js实现简易红绿灯

    HTML代码: 在一个div容器内,设置3个span CSS代码: .red_light { width: 200px; height: 200px; border-radius: 50%; marg ...

  4. java socket聊天工具_java+socket 简易聊天工具

    1.服务器端程序 package com.test3; import java.io.*; import java.net.*; import java.awt.*; import java.awt. ...

  5. java聊天室程序_Java简易聊天室程序socket

    Java简易聊天室程序socket chatroomdemo.java package com.socket.demo; import java.io.IOException; import java ...

  6. 《基于Node.js实现简易聊天室系列之项目前期工作》

    前期工作主要包括:项目的创建,web服务器的创建和数据库的连接. 项目创建 网上关于Node.js项目的创建的教程有很多,这里不必赘述.Demo所使用的Node.js的框架是express,版本为4. ...

  7. html做一个qq气泡,HTML5实现QQ聊天气泡效果

    今天自己用 HTML/CSS 做了个类似QQ的聊天气泡,以下是效果图: 以下说下关键地方的样式设置.然后贴出html和css代码(不多). 步骤1:布局 消息採用div+float布局,每条消息用一个 ...

  8. MATLAB做一个简单的3d模型,简易3D建模,让你快速创建3D模型

    原标题:简易3D建模,让你快速创建3D模型 MagicaVoxel Mac版通过其显著的直观性.任何用户,乃至那些有素的编辑或其余3D建模运用程序之前没有任何经验的朋友,可以开始创建的对象吧,无需经过 ...

  9. html做一个抽奖游戏,js实现大转盘抽奖游戏实例

    /p> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> js抽奖 td{width:50px;he ...

最新文章

  1. webstorm 使用svn
  2. h桥控制电机刹车_082 电机驱动桥集成式的结构,定速比10左右,松油门或轻踩刹车瞬间,出现齿轮撞击的情况,是什么原因导致的?应该采取什么措施?...
  3. GPL与LGPL的区别
  4. 在CentOS 6上搭建LNMP环境
  5. 阿里巴巴大数据实践:OneData模型实施介绍
  6. MySQL在Windows 环境中的安装
  7. cocos2dx开发之util类方法——字符串替换
  8. Spread for Windows Forms高级主题(6)---数据绑定管理
  9. P1068 分数线划定
  10. 查看MySQL以及SQL Server 实际存储类型
  11. HP380 G9服务器RAID划分
  12. 大中型网站使用图片域名的必要性原因
  13. 基于 Intel 的 Mac,如何使用机构恢复密钥的技巧
  14. 移动端学习笔记(黑马教程)-基础概念
  15. net use 命令使用
  16. Nacos注册中心AP架构源码(Distro)上篇
  17. mod函数计算机,Excel中mod函数的使用方法
  18. 捋一捋DSP里的重叠保留法
  19. 用计算机怎么弹学猫叫,抖音我们一起学猫叫计算器谱分享
  20. 关于7Z自解压文件拆分,读取条目,复写,合并的功能

热门文章

  1. 程序员团队名称和口号_这50个团建活动的口号,你曾经叫过几次呢?
  2. 云计算,经济危机下爆发
  3. 易模3D建模教程 |手机也能编辑3D模型,快速生成人头像!
  4. 分享一个音乐API接口地址
  5. 鸿蒙系统大文件夹怎么调整大小,win7系统打开窗口太大或太小的调整方法
  6. 拯救者y7000问题解决
  7. ZIP压缩算法原理解析(好文推荐,看完就懂)
  8. Android获取音乐专辑封面图
  9. 赛昉科技 星光v1 使用笔记
  10. MyBatis Generator 代码自动生成器,从此解放你的双手