文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

JavaScript实现简易QQ聊天界面

2024-04-02 19:55

关注

本文实例为大家分享了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>

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

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-前端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯