web前端开发总结(未完)

   由于我也是接触前端开发不久,所以呢,自己也会做点小功课,于是,我把前端能够用到的知识稍稍做了下总结,总结的不全面,以后会慢慢完善的!

移动前端开发基础 (总结----待完善)
1、移动前端开发:简而言之就是对于移动设备所开发的应用,Android 、iPhone 是当今时代的主流系统,自从这两个手机操作系统的发布以来,Webapp(以WEB形式运行的应用程序,运行在高端的移动终端设备)便开始流行起来。
1>我们都知道在高端智能手机系统中有两种应用程序:一种是基于本地操作系统运行的APP 也就是nativeapp,另一种是基于高端机的浏览器运行的APP,也就是webapp。首先来看一下webapp和nativeapp的区别:
@、nativeapp(基于本地运行的app)
01、开发成本非常大(它一般使用的语言为java、c++、等比较大型的开发软件)。
02、更新体验较差,同时也是比较麻烦的(在发布新的版本的时候,都需要打包,这样会大量浪费时间、精力的,而且它是需要手动更新,这也是用户体验较差的的原因之一)
03、它除了有不足之处外,它还是有一些优点的,比如: 它非常酷(因为nativeapp可以调用IOS中的UI控件的方法,从而可以实现一些webapp 无法实现的一些比较酷的交互效果)
04、nativeapp它是被apple所认可的,(nativeapp它是被apple认可的一款可信任独立软件,可以放在Apple Store出售,但是webapp就不可以)
@、webapp(基于高端机的浏览器运行的app)
01、开发成本低(使用web开发技术就可以轻松完成web app 的 开发)
02、升级比较简单(升级不需要通知用户,在服务器端口更新文件就可以了)
03、维护比较轻松(和一般的web一样,维护比较简单,它其实就是一个站点,)
说白了webapp就是针对Android和Iphone系统优化后的web站点,它所采用的技术一般都是html5、css3、javascript、服务端技术JAVA、PHP、ASP等。

2>在了解了nativeapp和webapp之后,那么HTML5和css3则是我们学习的关键所在,首先来了解一下html5吧!
@、一般对于前端开发员来说,还是建议用html5来实现webapp的编写的,从而放弃那些版本较低的html4之类的,因为html5他可以实现一些html4无法实现的web应用程序,它可以减少开发者很多的工作量,减少对外部插件的需求(比如 Flash);在此之前必须要熟悉html5中的一些新标签的应用;
新添加的标签: 用于绘画的 canvas 标签
用于媒介回放的 video(视频) 和 audio(音频) 标签
新的特殊内容元素,比如 article、footer、header、nav、section
新的表单控件,比如 calendar、date、time、email、search
比如:定义一些文章内容的区域。可以建议使用section标签;
定义一些导航条和选项卡的时候可以使用nav标签;
定义底部导航和底部板块的时候可以使用footer标签;
定义内容的头部的时候,可以用header标签;

@、在对于css3的使用中,有很多的属性值得我们去学习,那么我就列举几个比较常见的属性;
比如:在css3的编写中,我们尽量要放弃使用float属性,可以直接使用display:block(块元素转换为行内元素);
在css3中我们也应用了 animation(动画)这个属性;
animation-name ------动画的名称 ; 18:29 2014/10/30
animation-duration-----动画完成一个周期所花费的时间(秒或毫秒。默认是 0);
text-shadow 这个属性是添加阴影,它可以实现美化文字效果;
因为一些圆角按钮它会具有高光和内发光的效果,这样的效果在使用css3是无法写出来的,但是我们可以利用-webkit-border-image来定义它的样式。
有些页面它会要求我们用自适应的布局去排布,因此一般建议不要把它的宽度定义死,可以采用百分比的排布方式排列,或者是用em来代替px 的使用,这样就可以自适应一些ipad、iPod、iphone、Android、web safarik、chorme、这样的话也不用考虑一些屏幕的分辨率。

3>然而作为一名前端开发者,又想要在移动端上开发出自己的应用,那么对于WebKit内核浏览器也是必须要有一定的了解的,所以说它自己本身也是有自己的一些技巧的;我也总结了以下几点,就是平时常见的:
a.viewport
定义:相对于浏览器而言, 从字面定义它就是可视窗口、可视区域的意思,然而对于一般的浏览器我们应该都知道它是什么?也就是除去所有的工具栏、状态栏、以及滚动条以外的我们可以看得见的网页的区域;
相对于移动设备而言,因为移动设备的屏幕宽度它不同于传统的web,因此我们必须要改变viewport来实现,那么我们操作viewport就有以下几个属性:
@、width ------viewport的宽度(它的屏幕范围为220px-10000px之间,一般来说默认的宽度为980px)。
@、heigth ------viewport的高度(它的屏幕范围为223px-10000之间)。
@、minium-scale -----这是指用户所允许屏幕缩放到的最小比例。
@、maxium-scale -----这是指用户所允许屏幕缩放到的最大比例。
@、user-scalable ------这是指用户是否可以手动缩放屏幕(它一般会有两个值:yes / on)。
b.事件(event)在学习和了解移动端的时候,事件的学习是必不可少的,它在APP的实现中会起着很大的作用;它包含了很多的事件,那么下面我就列举一些我们常见的、用的比较多的事件,来进行了解和学习。
a》手势事件(从字面上理解,它就是指手指触摸到屏幕所发生的事件)它包括以下几个事件:
@、touchstart------当手指接触到屏幕时出发的事件
@、touchmove-----当手指接触到屏幕的时候开始移动时出发的事件
@、touchend-------当手指离开屏幕时触发的事件
b》触摸事件(也就是从字面意义上理解,它就是和手势事件想似,也是手指触摸到屏幕所触发的事件)
@、gestureshart----当两个手指接触到屏幕时触发的事件
@、gesturechange----当两个手指接触到屏幕后开始移动时触发的事件
@、gestureend-----当两个手指离开屏幕时触发的事件
c》屏幕旋转事件(从字面的意思上理解,就是指当屏幕发生旋转的时候它所触发的事件);要知道在发生旋转时,它的状态有没有发生变化,即左旋、右旋、或者是没旋,首先呢,必须先要进行判断:在判断的过程中我们应用到了switch这个循环语句来进行;最后记得要添加 监听事件(addEventListener)。
d》touch事件,在了解了上述各种事件时,那么touch事件则相对而言就比较容易理解了,它一般是针对于视口的宽度和高度而言的,那么也就包含了以下几点属性:
@、clientX 和 clientY 相对于当前窗口的X/Y坐标
@、screenX和screenY 相对于当前屏幕的X/Y坐标
@、pageX和pageY 相对于父元素的X/Y坐标
那么对于学习和理解webapp还有好多的技巧和属性值得我们去学习,而我总结的也只是它其中的一小部分而已。

总结的可能不太详细,但是我会继续加油的哦!嘻嘻!

你可能感兴趣的:(web前端开发)