先附图

  

CSS部分:

<style>
body{}
*{margin:; padding:}
li{list-style: none;}
.container{ width:310px; height:600px; margin:20px auto 0; background: url('images/iphone.jpg'); position:
relative;}
#name{width:23px; height:23px; border:1px solid darkgrey; border-radius: 8px; padding:3px; cursor:pointer;}
.main{bottom:64px; left:22px; border-top:1px solid darkgrey; position:absolute;padding:6px 4px 4px 7px;width: 258px;}
#import{border-radius: 4px; height:18px; line-height:18px; border: 1px solid #b8b8b8; outline:;padding:5px; bottom:5px; position:relative; bottom:11px;width: 160px;}
#enter{font: 18px 'Microsoft YaHei';bottom: 8px; position: relative; cursor:pointer;}
.content{width: 255px;height: 389px;top: 84px; position: relative;overflow: auto;
padding: 0 0 0 28px;}
.content li{ line-height:28px;margin-bottom: 15px;overflow: hidden;position: relative;}
#inHtml img{width:25px; height:25px;position: relative;}
.th{text-align: right;}
.th img{float:right; margin-left:15px;}
.ds img{ width: 25px;height: 25px;position: relative;float: left;margin-right: 15px;}
.th p{background: forestgreen; text-align: left;padding: 3px 5px;border-radius: 4px;color: white; float:right;max-width: 182px;font:14px 'Microsoft YaHei'; }
.ds p{background: dimgrey;float: left;text-align: left;padding: 3px 4px;border-radius: 4px;color: white;
left: 32px;max-width: 190px; font:14px 'Microsoft YaHei';}
.ds{ text-align: left;}
.sent1{width:; height:; border:solid 8px; border-color: white white white forestgreen; position: absolute;right: 24px;top: 4px;}
.sent2{width:; height:; border:solid 8px; border-color: white dimgrey white white ; position: absolute;left: 24px;top: 4px;}
</style>

JS部分:

<script>
window.onload = function(){
//给两个图片定义为一个数组
var arr = ['images/tuhaoo.png','images/diaoshi.png'];
//得到名称的图标
var oName = $('name');
//得到输入内容
var oGet = $('import');
//显示输入内容
var oWrite = $('inHtml');
//默认输入框显示光标
oGet.focus();
//默认显示土豪
var onOff = true;
oName.onclick = function () {
if(onOff){
oName.src = arr[1];
onOff = false;
oGet.focus();
} else {
oName.src = arr[0];
onOff = true;
oGet.focus();
}
}
//发送事件
var oSet = $('enter');
oSet.onclick = function(){
if(onOff){
oWrite.innerHTML += '<li class="th">'+'<img src='+arr[0] + "/><p>" + oGet.value + '<span class="sent1"></span>' +"</p></li>";
} else{
oWrite.innerHTML += '<li class="ds">' + '<img src='+arr[1] + "/><p>" + oGet.value + '<span class="sent2"></span>' + "</p></li>";
}
oGet.value = '';
oGet.focus();
}
} //调用ID通配符
function $(id){
return document.getElementById(id);
}
</script>

Html部分:

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="utf-8">
<title>手机聊天界面</title>
</head>
<body>
<div class="container">
<div class="content">
<ul id="inHtml"></ul>
</div>
<div class="main">
<img id='name' src="data:images/tuhaoo.png">
<input id='import' type="text">
<span id="enter">发送</span>
</div>
</div>
</body>
</html>

JS案例练习-手机微信聊天对话框的更多相关文章

  1. HTML5仿手机微信聊天界面

    HTML5仿手机微信聊天界面 这篇文章主要为大家详细介绍了HTML5仿手机微信聊天界面的关键代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下     给大家带来的是HTML5仿手机微信聊天界面, ...

  2. 在类似qq或者微信聊天中。如何根据不同的手机发送图片

    原文:在类似qq或者微信聊天中.如何根据不同的手机发送图片   前一段时间,公司自己要求做多客服开发,但是对于发送图片这一块,当时很苦恼,我用自己的手机(米2)测试,不管是本地,还是云相册,最新照片. ...

  3. web版仿微信聊天界面|h5仿微信电脑端案例开发

    前几天开发了一款手机端h5仿微信聊天,人唯有不停学习才能进步,这段时间倒腾着整理了下之前项目,又重新在原先的那版基础上开发了一款仿微信聊天电脑端web版本,聊天页面又重新优化了多图预览.视频播放,右键 ...

  4. h5仿微信聊天(高仿版)、微信聊天表情|对话框|编辑器

    之前做过一版h5微信聊天移动端,这段时间闲来无事就整理了下之前项目,又重新在原先的那版基础上升级了下,如是就有了现在的h5仿微信聊天高仿版,新增了微聊.通讯录.探索.我四个模块 左右触摸滑屏切换,聊天 ...

  5. Svelte3聊天室|svelte+svelteKit仿微信聊天实例|svelte.js开发App

    基于svelte3.x+svelteKit构建仿微信App聊天应用svelte-chatroom. svelte-chatroom 基于svelte.js+svelteKit+mescroll.js+ ...

  6. 网页闯关游戏(riddle webgame)--仿微信聊天的前端页面设计和难点

    前言: 之前编写了一个网页闯关游戏(类似Riddle Game), 除了希望大家能够体验一下我的游戏外. 也愿意分享编写这个网页游戏过程中, 学到的一些知识. 本文讲描述, 如何在网页端实现一个仿微信 ...

  7. Vue3.0聊天室|vue3+vant3仿微信聊天实例|vue3.x仿微信app界面

    一.项目简介 基于Vue3.0+Vant3.x+Vuex4.x+Vue-router4+V3Popup等技术开发实现的仿微信手机App聊天实例项目Vue3-Chatroom.实现了发送图文表情消息/g ...

  8. CSS3 仿微信聊天小气泡

    今天给大家分享一个我刚做的项目中的一个小案例, 因为我们在做一个聊天的功能,之前的聊天页面UI很丑,我就不在这里展示给大家了. 现在就教大家怎么用css3制作一个和微信聊天界面一样的页面. 首先给大家 ...

  9. 关于微信聊天与朋友圈如何快速切换 Mark

    用微信时,你是否遇到这样的情况.你正刷着朋友圈,享受着各种鸡汤,这时候,你收到一条微信,一看是女王大人,不得不回.你诚恳的回了一条,等了二十秒不见有什么回应,于是就退了出来,进入朋友圈找到那篇没看完的 ...

随机推荐

  1. p2661 信息传递(Tarjan模板)

    传送门 题目 有 nnn 个同学(编号为 111 到 nnn )正在玩一个信息传递的游戏.在游戏里每人都有一个固定的信息传递对象,其中,编号为 iii 的同学的信息传递对象是编号为 TiT_iTi​ ...

  2. Entity Framework Code-First(3):Setup Environment

    Setup Development Environment for EF Code-First: Let's setup the development environment for Code-Fi ...

  3. CSS学习系列3--CSS3中的box-shadow的使用

    在CSS中,text-shadow是给文本添加阴影效果. box-shadow则是给元素块添加周边阴影效果. box-shadow基本的语法形式如下 box-shadow: [inset] x-off ...

  4. google广告尺寸

    谷歌AdMob广告支持三种tablet-only旗帜大小除了320×50显示在手机: 大小(WxH) 描述 可用性 AdSize常数 320×50 标准的旗帜 手机和平板电脑 横幅 300 x250 ...

  5. C# 关于跨线程访问控件问题

    跨线程访问控件问题的原因是:控件都是在主线程中创建的,而系统默认控件的修改权归其创建线程所有.在子线程中如果需要直接修改控件的内容,需要使用委托机制将控件的修改操作交给主线程处理.因此,当没有使用委托 ...

  6. [CentOS7] 通过vncviewer屏幕扩展

    方法一:通过vncserver来调整分辨率 这是博主最近才发现的,原来还可以直接通过在服务端通过设置vncserver来调整分辨率,方法如下: 接下来,我们要进行vncviewer屏幕扩展的设置: 点 ...

  7. SAS笔记(3) LAG和DIFF函数

    在实际的应用中,我们会想查看当前观测的上一个观测值,在上一篇博客中我们使用了RETAIN语句来记录上一条观测,其实SAS还提供了一个很好用的函数LAG.当我们使用函数时,一定要明确该函数的返回值是什么 ...

  8. Error mounting / dev / sdb1 in Ubuntu

    Uncommon users of Ubuntu OS, when connecting USB with NTFS file system, can observe the error: " ...

  9. [sql Server]除非另外还指定了TOP 或 FOR XML,否则,ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效

    今天遇到一个奇怪的问题,项目突然要从mysql切换到sql server数据库,包含order by 子句的嵌套子查询报错. 示例:select top 10 name,age,sex from ( ...

  10. EOS 多主机多节点配置终极命令

    eosio 10.186.11.211 hml 10.186.11.223 lwz 10.186.11.220 lx 10.186.11.141 //eosio private key 5K463yn ...