单页:
1jQuery Mobile
该框架以其基于AJAX的导航系统和可使用主题的ThemeRoller设计而闻名。支持Android,ios,Windows Phone,webOs等。编程模式为CSS和JS,在DOM上声明,用CSS和data-*属性标记。
2jQTouch
它是一个Zepto/jQuery插件,也是一个很容易上手的简单框架,它提供一组基本的小部件和动画,但是缺乏多平台支持,该框架还苦于缓慢而闪烁的动画以及延时的单击事件,只支持ios和Android.编程模式重CSS轻JS,使用CSS类检测合适的动画和交互,支持扩展。
无页面结构:
1xui
在无页面结构中标记是灵活而轻量级的。和单页方法不同,它的标记不与具体的DOM结构绑定。使用这一方法的最佳选择是xui,xui起源于PhoneGap框架,它不描述页面结构或者小部件的样式,而是处理事件,动画,变换和AJAX.它是轻量级的,且具备为所需功能添加插件的功能。xui专门为移动环境的DOM操纵做了裁剪,这是处理jQuery之类的现有桌面浏览器框架的一个重要因素。编程模式为清晰,熟悉的链式语法(类似jQuery);支持插件
JS驱动:
1Sencha Touch
Sencha Touch是一个HTML/CSS3/JS框架,通过SASS/Compass,类似数据展示的模型,存储和代理,提供不同的原生样式小部件和灵活的主题。增强的触摸事件和强大的数据模型为这个框架提供了一些企业级的特性,和jQuery与jQTouch不同,使用Sencha,不用编写HTML,而是用JS建立UI和应用。
2Wink Toolkit
它的内核提供移动开发人员所需的从触摸事件处理到DOM操纵对象和CSS变换实用工具的所有基本功能。支持ios,Android,BlackBerry和Bada。用JS助手添加标准移动浏览器支持,UI在JS中创建。它最大的亮点是含有大量的2D和3D组件,以及用手势操纵组件的能力。例如用wink的CoverFlow组件,用户可以使用两根手指来改变视角。
3The-M-Project
它有4个核心开发概念,MVC,Content Binding(内容绑定),Dynamic Value Computing(动态数值计算)和Event Handling(事件处理)。所以它的大部分重心在编程模式上。支持Android,ios,Windows Phone,webOs,BlackBerry。编程模式主要依赖MVC模式;通过JS创建视图组件,处理数据绑定。它的Web Storage(用于本地和远程存储的数据提供者)。
还有其他一些框架如Sproutcore,Jo,Zepto,LungoJs它们都有各自在移动web编程上的优点,也有其缺陷。
*文章系《HTML5 and JavaScript Web Apps 》读书笔记