常用的移动前端webapp交互细节
#常用的移动前端webapp交互细节 ##select的表现方式
###PC端
select控件在传统PC桌面已经存在多年,由于在IE6等低版本浏览器容易造成层级错乱,一直被一些UI框架所抛弃,而用div层去模拟。
 ###移动设备
而在移动设备上,select 控件的表现方式不太一样,如下图,分别是UC浏览器,小米的系统浏览器,及海豚浏览器的表现方式



可以看出,为适应移动设备小屏幕的特征,很多浏览器都对此进行优化改造。 ###原理与思考
此现象的根本原因,是html只有文档标准,所以各个软件(浏览器)的实现有其具体表现。的确,要进行web标准的交互,只能制定文档层面的标准。但也带来外观不统一、控件表现、操作体验不统一的问题。像UC就要在选择之后进行二次确定,小米和海豚都不需要;小米的定位在底部,其他的都是居中表现的。 ##单行数据内容过长的表现方式
###PC端
在新闻列表、文章标题列表的页面,很容易出现标题比内容长的情况,在PC端的一般表现方式是**类似excel表格的列宽调整机制**,如图(鼠标在上面拖动可以调整列宽):  http://www.jeasyui.com/demo/main/index.php?plugin=DataGrid&theme=default&dir=ltr&pitem= 或者可以利用**鼠标提示**来展现可能会超出范围的文字 ###移动设备
而在移动设备上,上述方案并不可行,但是我们可以用另外的表现方式:`swipe`。如[示范页面](http://gh.p2227.com/m/swipe)所示 ###原理与思考
原理是非常简单的,在一个宽100px,overflow非hidden的容器里面放进200px的内容,容器会产生滚动条。然后结合触摸设备的特点:滚动条并不占位置,并且是按住内容滚动的。这种表现方式就变得非常适应。 ###组件化的swipejs
上面讲到的表现非常原始,对于大批量应用,我们一般参考现成组件[swipe.js](http://swipejs.com/),利用它去处理(可能在一些UI框架已经集成了此表现方式)。基本原理还是利用滚动条,然后再加入了transform等新css3特征使之有一定的动画效果并且接近原生的表现。 ##按钮的大小与间隔
###PC端
在鼠标指针控制的PC端,各功能按钮可以非常小,并且可以放得非常紧凑,例如经典的window窗口右上角-□×三个按钮(最小化最大化关闭),置于右上角是非常方便的,并且一般人也不容易按错。 ###移动设备
而在移动设备上,由于触摸屏和人手指的特点,按钮应该要做得大而有一定间距,如图,我们按钮的图标可能如红框所示,但是按钮的功能有效区域应该是整个黑框。  ##最后的话
最后,自己评价一下吧,我觉得本文还是非常直观的感觉与积累,并没有进行太深入的分析与原理探索,主要还是想抛砖引玉,想跟大家一起讨论一些用户体验的东西。 然后是自己的一些博文计划,列出来,让自己经常记得要整理~
---状态机
---fiddler应用(反向代理)
---angular的filter
---打包发布工具ant,grunt(工程化)
常用的移动前端webapp交互细节的更多相关文章
- iOS开发笔记7:Text、UI交互细节、两个动画效果等
Text主要总结UILabel.UITextField.UITextView.UIMenuController以及UIWebView/WKWebView相关的一些问题. UI细节主要总结界面交互开发中 ...
- 移动前端webApp开发点滴积累20140629
#移动前端webApp开发点滴积累20140629 ##关于input行内居中的问题 给input设定一个比较高的高度,在某些版本的移动设备上,文字不能垂直居中,即使设定了相同的行高也不行.(见图) ...
- VScode常用几个前端插件live HTML previewer和debugger for chrome的配置
之前一直都是用sublime Text和chrome配合来写前端的页面,自从知道了有liveReload这个神奇的插件之后感觉爽翻了啊.好吧跑远了........ 话说最近微软搞了个VScode,听说 ...
- 通过PHP前端后台交互/通过ajax前端后台交互/php基础传输数据应用/简单的留言版/简单的注册账户/简单的登录页/
前 言 PHP 通过上一篇博客,注册账号与登录页面--前后台数据交互 跳转转到index主页,接下来进入主页留言板功能,通过ajax向后台传输数据,同时发表留言. 具体的内容分析如下 ...
- php 接口与前端数据交互实现
最近在做前后端数据交互的尝试,也跳了很多坑,使用的是php+bootstrap-table+js,把一些收获记录在这里,方便查询. 这个小项目,仅有3个文件,分别为: crud.html data.p ...
- 移动前端webApp开发点滴积累20140524
#webApp开发几点体会(移动前端) ##前言 本文旨在记录本人涉足移动webApp开发的几点体会,欢迎分享与指正. ##再见,IE678 移动设备,Android跟iPhone是主流,即使是win ...
- Java和操作系统交互细节
结合 CPU 理解一行 Java 代码是怎么执行的 根据冯·诺依曼思想,计算机采用二进制作为数制基础,必须包含:运算器.控制器.存储设备,以及输入输出设备,如下图所示. enter image des ...
- 前端数据交互之json&ajax
1.json json是 JavaScript Object Notation 的首字母缩写,单词的意思是javascript对象表示法,这里说的json指的是类似于javascript对象的一种数据 ...
- MongoDB 安装详细教程 + 常用命令 + 与 Python 的交互
MongoDB 简介 MongoDB (名称来自 humongous/巨大无比的, 是一个可扩展的高性能,开源,模式自由,面向文档的NoSQL,基于 分布式 文件存储,由 C++ 语言编写,设计之初旨 ...
随机推荐
- RMAN restore fails with ORA-01180: can not create datafile 1
最近在验证.测试备份有效性时,遇到了"ORA-01180: can not create datafile 1"这个错误,顺便结合metalink的官方文档"RMAN ...
- MyBatis笔记----@Intercepts({@Signature(type = StatementHandler.class, method = "prepare", args = {Connection.class
使用MyBatis 3.4.1或者其以上版本 @Intercepts({ @Signature(type = StatementHandler.class, method = "prepa ...
- 通过linkserver不能调远程表值函数
Question: 通过linkserver调远程表值函数报错如下 Solution: 注意:查询语句中的[SDS_NONEDI].[DBO].ddddd(),不能加server名[sdsc2-1]. ...
- c 指针函数 vs 函数指针
指针函数,函数指针 #include <stdio.h> int max(int a, int b){ return a > b ? a : b; } //函数指针,2个int参数, ...
- monkey_recorder录制monkeyrunner脚本
转载:monkey_recorder录制monkeyrunner脚本 1. 你必须有android sdk, sdk的tools文件家里有一个monkeyrunner.bat.2. 将如下内容拷贝 ...
- CVE-2017-8464 分析
目录 CVE-2017-8464(stuxnet 3.0) 分析 0xFF 前言 0x00 分析工具 0x01 漏洞复现 1).生成一个DLL用于测试 2).构造一个恶意的lnk二进制文件 3).RU ...
- 关于Numba开源库(Python语法代码加速处理,看过一个例子,速度可提高6倍)
关于Numba你可能不了解的七个方面 https://yq.aliyun.com/articles/222523 Python GPU加速 (很详细,有代码练习)https://blog.csdn.n ...
- 【算法】LeetCode算法题-Maximum Subarray
这是悦乐书的第154次更新,第156篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第13题(顺位题号是53).给定一个整数数组nums,找出一个最大和,此和是由数组中索引 ...
- Docker: dockerfile常用关键字
Dockerfile指令 Dockfile执行和shell命令一行,一行一行执行- 写Dockerfile注意点: 1. 尽量少RUN 2. 多个命令拼接在一起 ...
- Scrapy 框架 增量式
增量式: 用来检测网站中数据的更新情况 from scrapy.linkextractors import LinkExtractor from scrapy.spiders import Crawl ...