JavaScript_制作简易QQ聊天界面
题目:
制作一个简易聊天界面,当用户在界面下方的文本框中输入信息后,点击发送按钮,文本框中的信息发送到界面中部的信息显示区域,同时信息输入文本框中的信息被清空,等待下次信息录入。信息从上往下一条条显示。
操作界面如下图所示:
题目分析:
1.用户输入信息,需要文本框text;
2.确定输入的信息后,点击发送按钮,即button按钮;
3.文本框的信息将显示在信息显示区域textarea,或者div,本文将使用textarea;
4.单击发送按钮之后,文本框中上条内容应被清空;
代码分析:
<body><form id="myform" method="post"><textarea id="mytext" rows="15" cols="40"></textarea><br><div id="mydiv"><span id="name">丫丫:</span><input type="text" name="message" id="message"><input type="button" value="发送" id="submit"></div></form>
</body>
此部分代码功能为:在HTML页面中呈现出基本的操作界面;
设置textarea大小为 rows=“15” cols=“40” ;
此模块中的div标签作用在于为输入本文框,按钮设置背景色;
<style type="text/css">#mydiv{background-color: pink;width:300px;}#mytext{border:2px pink dotted;text-align: left;}</style>
为界面设置 css 样式;
1.#mydiv :为id号为“ mydiv ” 的元素设置样式;
2.#mytext :为id号为“ mytext ” 的元素设置样式;
border:2px pink dotted;
text-align: left;
border:设置 2像素大小 粉色 点状边框;
内容显示为居左;
<script type="text/javascript">window.onload = function(){var aname = document.getElementById("name");var amessage = document.getElementById("message");var amytext = document.getElementById("mytext");var asubmit = document.getElementById("submit");asubmit.onclick = function(){amytext.value += aname.innerText + amessage.value +"\n\n" ;amessage.value = "";}}</script>
window.onload = function(),当页面载入之后开始编译;
因为,文本域显示的内容是追加一条一条的,故用 += 赋值;
aname.innerText :
name的获取通过.innerHTML获取,也可用.innerText,区别在于.innerHTML中从对象的起始位置到终止位置的全部内容,包括Html标签;而.innerText 去除了Html标签(可以理解为样式)
var asubmit = document.getElementById("submit");
asubmit.onclick = function(){ }
首先获取发送按钮动作,为此动作添加事件,具体事件内容写在大括号{ }中;
amessage.value = "";
此条语句的作用在于,将每次文本框中的内容发送之后,自动清空上条内容,为接收下调内容做准备;若没有此条语句,则会出现以下情况:
图中用红色笔圈出部分!
源代码
<!DOCTYPE html>
<html>
<head><title>QQChat</title><meta charset="utf-8"><style type="text/css">#mydiv{background-color: pink;width:300px;}#mytext{border:2px pink dotted;text-align: left;}</style><script type="text/javascript">window.onload = function(){var aname = document.getElementById("name");var amessage = document.getElementById("message");var amytext = document.getElementById("mytext");var asubmit = document.getElementById("submit");asubmit.onclick = function(){amytext.value += aname.innerHTML + amessage.value +"\n\n" ;amessage.value = "";}}</script>
</head>
<body><form id="myform" method="post"><textarea id="mytext" rows="15" cols="40"></textarea><br><div id="mydiv"><span id="name">丫丫:</span><input type="text" name="message" id="message"><input type="button" value="发送" id="submit"></div></form>
</body>
</html>
此代码完全个人编写,有不妥之处,请见谅!
JavaScript_制作简易QQ聊天界面相关推荐
- 机器人聊天软件c#_C#制作简易QQ聊天机器人
最近对QQ聊天机器人比较感兴趣,奈何一直没找到C#的源码,就自己摸索,好了废话不多说了,开始正题. 首先我们要准备的是C# 的SDK下载地址:http://pan.baidu.com/s/1geW0X ...
- java qq聊天界面代码,Java简易qq聊天,代码
Java简易qq聊天,代码 关注:156 答案:2 手机版 解决时间 2021-02-26 11:56 提问者心死旳很干净 2021-02-25 16:17 Java简易qq聊天,代码 最佳答案 ...
- qt小项目 代码实现简易的QQ聊天界面
qt小项目 代码实现简易的QQ聊天界面 代码 效果图 总结 代码 myDialog.h #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QW ...
- C语言实现类似QQ聊天界面抖动功能
该博文为原创文章,未经博主同意不得转载,如同意转载请注明博文出处 本文章博客地址:https://cplusplus.blog.csdn.net/article/details/104991863 实 ...
- 点击跳转到QQ聊天界面
<!--//需要添加好友验证--><a href="tencent://message/?uin=QQ号码&Site=&Menu=yes"> ...
- gui编程实践(2)--qq聊天界面 JTextArea多行文本框组件
//qq聊天界面 package com.test; import java.awt.*; import javax.swing.*; public class Demo8_10 extends JF ...
- 简易QQ聊天室,socket多线程编程(C语言实现),简单易懂
简易QQ聊天室 实现本功能,仅需了解socket套接字的使用,我已经将socket套接字的监听接受状态封装在了common.c中,相信你看了会有所收获,socket的连接也封装在common.c中. ...
- 【3】QQ 聊天界面
1.说明 稍微修改了下QQ示例里面的聊天界面界面,然后把代码扣过来完成了QQ聊天界面部分,效果还可以. 不过自己添加了消息响应:窗口抖动,截屏,字体栏的显示和隐藏 2.代码部分 // QQTalk.h ...
- HTML如何编写类似QQ聊天框,jQuery实现简易QQ聊天框
本文实例为大家分享了jQuery实现简易QQ聊天框的具体代码,供大家参考,具体内容如下 例子1 *{list-style: none;margin: 0;padding: 0;} .box1{ wid ...
最新文章
- 一行python代码能干_几个小例子告诉你, 一行Python代码能干哪些事
- SQL Server 查询性能优化——覆盖索引(二)
- hadoop lambda_Delta架构:统一Lambda架构并利用Hadoop / REST中的Storm
- C++ primer 第14章 操作重载与类型转换
- 1 Selenium Python 基础
- xamarin.android 控件,将Android View作为自定义控件集成到Xamarin.Forms
- dapper 调用 存储过程返回值_数据库事务、存储过程、函数以及触发器之间的区别和联系...
- c++ 等待子线程结束_进程和线程
- Win10 系统字体美化
- 基于MATLAB实现四阶龙格库塔法求解一、二阶微分方程实例
- ddl是什么意思网络语_跟随你大学的流行词语 DDL 你竟还不知道?
- 新媒体运营教程:如何用直播进行裂变+转化?
- pve万兆网卡驱动_家庭万兆方案性价比之选,10G网速不是梦!战在当下,布局未来!...
- 富不过三代已成过去,解答为什么越有钱的越有钱?
- Next.js性能优化之ISR渲染入门和原理探索
- 内网渗透测试 MSF搭建socks代理
- 读格林斯潘回忆录-12
- Pygame-飞机大战
- 用Python爬取wallhaven高清原图
- 卷积 反卷积 上采样 下采样 区别
热门文章
- mysql递归查询方法|mysql递归查询遇到的坑,教你们解决办法
- 墨者学院_Linux硬盘文件分析取证(恢复文件)
- #vs code# 恢复默认快捷键
- 安卓中ProgressDialog用法
- 三星手机服务器未响应是怎么回事啊,三星手机触摸屏突然不好用没反应!
- 前端JavaScript年度个人总结
- Adams打开后加载界面后面变黑,无法进入软件
- 华为云-云耀云服务器之CentOS安装宝塔面板
- vue.js 调用java_Vue.js调用后端java接口的实例代码
- Linux namespace 原理