位置: 编程技术 - 正文

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

编辑:rootadmin

推荐整理分享gameboy网页闯关游戏(riddle webgame)--仿微信聊天的前端页面设计和难点(网页过关类游戏),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:游戏闯关页面,闯关游戏在线玩,网页闯关游戏,gameboy闯关游戏,网游闯关游戏,gameboy闯关游戏,gameboy闯关游戏,网页闯关游戏,内容如对您有帮助,希望把文章链接给更多的朋友!

前言:

  之前编写了一个网页闯关游戏(类似Riddle Game), 除了希望大家能够体验一下我的游戏外. 也愿意分享编写这个网页游戏过程中, 学到的一些知识.

  本文讲描述, 如何在网页端实现一个仿微信的聊天窗口界面, 以及其中涉及到的一些技术点. 作者前端是初学者, 请大拿们轻拍.

效果展示:

  这种聊天对话的布局模式, 比PC端QQ的那种聊天方式更贴近移动端, 我个人感觉.

需求设定:

  让我们先过一遍, 实现该聊天窗口需要支持的一些功能点.

  &#; 聊天消息结构和布局

  聊天消息包括: 人物(头像)和消息内容. 朋友消息位居左侧, 自己消息则位于右侧, 方便区分.

  &#; 文本区域的自适应

  消息内容可以自适应大小, 总是以最合理的区域大小包裹.

 &#; 滚动支持

  因聊天记录太多, 大小超过聊天窗口的预设尺寸.

  &#; 底部自动对齐

  有新消息后, 窗口内容自动对齐到可视窗口的底部.

  &#; Enter键捕获

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

  消息的输入支持, 以及捕获响应Enter键.

  这几个功能点中, 感觉最难的是文本区域自适应处理, 走了不少弯路, ^_^.

实现方案:

  &#; 聊天消息结构和布局

  基本的html代码结构可以如下所示:

  注: 头像为一个img标签, 文本消息内容则为一个div, 包裹两者的是另一个大的div, 代表完整的一个消息.

  对于布局的左偏移和右偏移, 则借助float:left|right, 来进行控制, 这个还是基础的.

  &#; 文本区域的自适应

  为了让聊天的文本内容显得美观, 最好方式就是自适应的文本区域(有个max-width, 区域最小化).

  最初的时候, 我尝试了textarea标签, 因为其属性有row和col, 对应字符个数单位, 可以用于设定行数和列数.

  可惜的是, 我被现实打败了, 因为textarea对中文字符和英文字符的计算标准不同, 中文字符按2个算, 英文字符按1个算. 因为用户输入的不确定, 导致很难用文本串的长度来设定textarea的行列值.

  于是回到起点, 只能走计算文本像素点px长度的方式来设定大小(等价于限定max-width).

  计算文本的长度, 参考于"JQuery 计算文本的总宽度 Width".

  注: 巧妙的通过添加/删除<pre>标签, 返回<pre>的真实长度, 既文本长度.

  对于小于预设的max-width, 则文本区域div缺省即可. 对于大于预设的max-width值, 则文本区域div设定为width=max-width.

  当然这边还有一个需要的注意的地方, 就是自动换行.

后记:

  原本以为实现一个聊天窗口的示例很容易, 却在真正的实践过程中磕磕碰碰, 步履蹒跚. 前端这一块, 真心水很深. 事后回忆起来,觉得收获很大, 当然对于文本的自适应, 采用了一个较复杂的办法. 后来想想是不是加个max-width属性就能轻松搞定了&#;

好了,关于本文给大家介绍的gameboy网页闯关游戏(riddle webgame)--仿微信聊天的前端页面设计和难点就给大家介绍这么多,希望对大家走gameboy网页闯关游戏有所帮助!

浏览器检测JS代码(兼容目前各大主流浏览器) 本文实例介绍了JS代码实现浏览器检测,分享给大家供大家参考,具体内容如下varBrowserMatch={init:function(){this.browser=this.getBrowser().browser||"AnUnknownBrowser";this

JS中Eval解析JSON字符串的一个小问题 之前写过一篇关于JSON的介绍文章,里面谈到了JSON的解析。我们都知道,高级浏览器可以用JSON.parse()API将一个JSON字符串解析成JSON数据,稍微欠妥点的做

javascript实现计时器的简单方法 计时器,在生活当中也是用得频繁的功能,比如锻炼身体,跑步比赛等等相关的活动.我们用Javascript来完成一个计时器.计时器,主要就是对时间的一个逻辑处

标签: 网页过关类游戏

本文链接地址:https://www.jiuchutong.com/biancheng/380395.html 转载请保留说明!

上一篇:js面向对象的写法(js面向对象的原理)

下一篇:浏览器检测JS代码(兼容目前各大主流浏览器)(浏览器检测js代码)

  • 个体户注销工商没有收走公章
  • 收购票怎么做会计分录
  • 外经证先开票一直未预缴怎么办
  • 劳务所得报酬
  • 现金折让怎么做会计分录
  • 短期负债包括哪些债务
  • 业务招待费如何调增调减
  • 已认证的红字发票怎么退
  • 补开的银行手续费发票怎么做账
  • 缴纳土地出让金购买的土地是无形资产吗
  • 租赁公司运输费计入什么科目
  • 汽车维修行业工时标准
  • 销售额没有达到要求企业采取措施
  • 现金流净额为负值说明什么
  • 金融企业贷款利率
  • 兼职劳务费个税怎么算
  • 不动产融资租赁服务属于租赁服务吗
  • 契税减免备案材料是什么
  • 企业购买固定资产要交印花税吗
  • 公司装修待摊费怎么算
  • 现金日记账漏记一笔怎么办
  • php字符串操作函数
  • 新车车祸报废
  • linux去除文本中的特殊符号
  • 利息收入增值税确认时点
  • 毛地黄长什么样
  • pdo_mysql
  • 一般纳税人销售旧货适用征收率是?
  • 中医门诊免增值税吗
  • 利得是什么举个例子
  • 计提的增值税可以扣除吗
  • vue动态组件component原理
  • 智能优化算法可以用到哪里
  • php获取文件信息
  • c++评测
  • 所得税申报表营业成本包括管理费用吗
  • 地税代开的发票怎么计提税款?
  • 归属于母公司所有者权益合计
  • 国家为什么要征收各种税
  • 一般纳税人和小规模纳税人的区别
  • 预缴增值税需要提供什么资料
  • 外购商品发给员工要交个税吗
  • 广告费应该计入办公费还是印刷费
  • 劳动仲裁支付的补偿金计入什么科目
  • 待认证进项税额借贷方向
  • 进项税额属于什么会计科目
  • 企业收到加盟费怎么开发票
  • 小微企业免税如何做账
  • 非同一控制下企业合并发生的审计费
  • 子公司利润母公司还有其他方式吗
  • 结算金额和付款金额
  • 商品盘点库存的方法
  • sql中的存储过程
  • Windows Server 2008网络中禁止迅雷下载
  • 怎么安装win7系统不占硬盘空间呢
  • mac怎么设置应用权限
  • winxp如何删除网卡驱动
  • .exe是什么软件
  • windows屏蔽网络设置的方法不包括以下哪种
  • win8.1 微软拼音设置
  • 如何在win7系统中查看电脑基本信息
  • win8系统如何关闭杀毒系统
  • win7 64位旗舰版电脑如何取消网页自动保存密码?win7取消自动保存网页密码的方法
  • 在Linux系统中安装虚拟window
  • js中创建函数的方法
  • ExtJS4 组件化编程,动态加载,面向对象,Direct
  • Unity3D游戏开发毕业论文
  • unity物体移动速度怎么设置
  • JQuery.validationEngine表单验证插件(推荐)
  • linux系统启动进程命令
  • activity启动流程图解
  • vue@cli
  • bootstrap基础教程书籍
  • 实现断点续传的工具软件
  • python中的魔法函数
  • 四川省 税务局
  • 四川医保卡原始密码是什么意思
  • 外购已税小汽车用于连续生产小汽车为啥可以抵扣
  • 智能财税证书含金量
  • 重庆国税局客服电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设