<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
*{margin: 0;padding: 0;}
.container{
width: 280px;
margin: 20px auto;
border: 1px solid #ddd;

}

.container .content{
height: 400px;
padding: 10px;
overflow: auto;
}
.fl{
float: left;
}
.fr{
float: right;
}
.clear{
clear: both;
}
.footer{

border-top: 1px solid #ddd;
padding: 10px;
height:30px;
}
.footer img{
float: left;
}
.footer input{
float: left;
width: 140px;
outline: none;
border: 1px solid #ddd;
/*margin: 6px;*/
padding: 7px 8px;
margin-left: 10px;
margin-right: 5px;
}
.btn{
padding: 7px 8px;
outline: none;
border: none;
background: #8A2BE2;
color: #fff;
}
.active{
background: darkgreen;
color: #eee;
}
.text{
word-break: break-all;
max-width: 210px;
}
.msgL,.msgR{
margin-bottom: 15px;
}
</style>
</head>
<body>
<div class="container">
<div class="content" id="content">

</div>
<div class="footer">
<img src="img/QQ1.png" id="img" />
<input type="text" id="text"/>
<button class="btn" type="button" id="send">发送</button>
</div>

</div>

<script>
var oSend = document.getElementById("send")
var oText = document.getElementById("text")
var oContent = document.getElementById("content")
var oImg = document.getElementById("img")
var onOff = true

oSend.onclick = function(){
var oTxt = oText.value

if(oTxt.length==0){
alert('请输入内容')
}else{
if(onOff){
var str1 = '<div class="msgL fl clear"><div class="img_text"><div class="img fl"><img src="img/QQ1.png" /></div><div class="text fr">'+oTxt+'</div></div></div>'
oContent.innerHTML+=str1
oText.value = ""
}else{
var str2 = '<div class="msgR fr clear"><div class="img_text"><div class="img fr"><img src="img/QQ2.png" /></div><div class="text fl active">'+oTxt+'</div></div></div>'
oContent.innerHTML+=str2
oText.value = ""
}
}


}

oImg.onclick = function(){
if(onOff){
oImg.src = "img/QQ2.png"
onOff = false
}else{
oImg.src = "img/QQ1.png"
onOff = true
}


}

</script>

</body>
</html>

js五道经典练习题--第二道仿qq聊天框的更多相关文章

  1. WPF仿QQ聊天框表情文字混排实现

    原文:WPF仿QQ聊天框表情文字混排实现 二话不说.先上图 图中分别有文件.文本+表情.纯文本的展示,对于同一个list不同的展示形式,很明显,应该用多个DataTemplate,那么也就需要Data ...

  2. js五道经典练习题--第四道qq好友列表

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  3. js五道经典练习题--第五道成绩列表

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  4. js五道经典练习题--第三道实现购物车功能

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  5. js五道经典练习题--第一道

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  6. JS简单仿QQ聊天工具的制作

    刚接触JS,对其充满了好奇,利用刚学到的一点知识,写了一个简单的仿QQ聊天的东西,其中还有很多的不足之处,有待慢慢提高. 功能:1.在输入框中输入内容,点击发送,即可在上方显示所输入内容. 2.点击‘ ...

  7. Socket实现仿QQ聊天(可部署于广域网)附源码(1)-简介

    1.前言 本次实现的这个聊天工具是我去年c#程序设计课程所写的Socket仿QQ聊天,由于当时候没有自己的服务器,只能在机房局域网内进行测试,最近在腾讯云上买了一台云主机(本人学生党,腾讯云有个学生专 ...

  8. 高仿qq聊天界面

    高仿qq聊天界面,给有需要的人,界面效果如下: 真心觉得做界面非常痛苦,给有需要的朋友. chat.xml <?xml version="1.0" encoding=&quo ...

  9. Android特效专辑(六)——仿QQ聊天撒花特效,无形装逼,最为致命

    Android特效专辑(六)--仿QQ聊天撒花特效,无形装逼,最为致命 我的关于特效的专辑已经在CSDN上申请了一个专栏--http://blog.csdn.net/column/details/li ...

随机推荐

  1. MySql数据库 sql查询增加序号的伪列

    在查询数据库的时候,我们有时候需要对查询出来的数据加上序列,1,2,3,……n 例如:我们根据表的某个字段排序后,要对这些数据加上序列,这个时候序号常常不是我们建表时设置好的自增的主键id,怎么办呢? ...

  2. Chat room

    /* Vasya has recently learned to type and log on to the Internet. He immediately entered a chat room ...

  3. BZOJ2730或洛谷3225 [HNOI2012]矿场搭建

    BZOJ原题链接 洛谷原题链接 显然在一个点双连通分量里,无论是哪一个挖煤点倒塌,其余挖煤点就可以互相到达,而对于一个点双连通分量来说,与外界的联系全看割点,所以我们先用\(tarjan\)求出点双连 ...

  4. BZOJ 3131 [SDOI2013]淘金 - 数位DP

    传送门 Solution 这道数位$DP$看的我很懵逼啊... 首先我们肯定要先预处理出 $12$位乘起来的所有的可能情况, 记录入数组 $b$, 发现个数并不多, 仅$1e4$不到. 然后我们考虑算 ...

  5. css 需要阴影的效果

    box-shadow: 0 0 10px 10px #b9bcbf; CSS3 box-shadow 属性 CSS 参考手册 实例 向 div 元素添加 box-shadow: div { box-s ...

  6. PHP ini 配置无效的坑给自己记录

    装redis 扩展时,发现装成功之后扩展一直加载不上, 于是phpinfo 发现Configuration File (php.ini) Path:none Loaded Configuration ...

  7. socket.io的connect连接时不断的进行自动连接,并产生错误net::ERR_EMPTY_RESPONSE

    socket = io.connect('http://192.168.1.200:9043?uuid=333'); 执行上面的语句时,产生下面的错误: 后来经过排查,是由于项目的jdk版本过低引起的 ...

  8. 在Eclipse中运行JAVA代码远程操作HBase的示例

    在Eclipse中运行JAVA代码远程操作HBase的示例 分类: 大数据 2014-03-04 13:47 3762人阅读 评论(2) 收藏 举报 下面是一个在Windows的Eclipse中通过J ...

  9. C#中的String类2

    深入C# String类 C#中的String类 他是专门处理字符串的(String),他在System的命名空间下,在C#中我们使用的是string 小写的string只是大写的String的一个别 ...

  10. 2019.01.22 bzoj3333: 排队计划(逆序对+线段树)

    传送门 题意简述:给出一个序列,支持把ppp~nnn中所有小于等于apa_pap​的'扯出来排序之后再放回去,要求动态维护全局逆序对. 思路:我们令fif_ifi​表示第iii个位置之后比它大的数的个 ...