最近常被问到是用 jQuery Mobile还是Sencha Touch,本人也比较关注这两个框架,试图从以下两方面发表点儿见解:

身家背景,都系出名门

1、jQuery Mobile 建立在jQuery 和 jQuery UI框架之上,很好的继承了jQuery支持多浏览器的特性,官方介绍支持 iOS, Android, Blackberry, Palm WebOS, Nokia/Symbian, Windows Mobile, Opera Mobile/Mini, Firefox Mobile。

优点:超多平台支持、入门简单传统div布局。

缺点:目前处于Beta阶段性能有待加强、UI支持比较简单不适合复杂交互。

2、ExtJS更名为Sencha后,Sencha Touch便是其中重要的一员,继承大哥ExtJS优点,SenchaTouch 同样具有整体UI布局的解决方案、华丽的界面,这些只需要JavaScript全部搞定。

优点:针对触摸屏丰富的UI设计支持复杂交互、纯JavaScript搞定布局、版本稳定性能尚可。

缺点:入门较不易需要javascript基础、支持平台较少(以Webkit浏览器为核心的Android,IOS,BlackBerry平台)。

从需求出发做选择

1、功能简单,只想让现有网站支持手机和平板电脑等移动设备,可考虑jQuery Mobile框架,入门简单而且支持较多平台。

2、想做客户端而且跨平台、丰富的交互,如果项目组有熟悉ExtJS的开发人员就更好了,请选择Sencha Touch。

各自的优缺点:

Sencha Touch 的优缺点
        前不久基于JavaScript编写的Ajax框架ExtJS,将现有的ExtJS整合JQTouch、Raphaël库,推出适用于 最前沿Touch Web的Sencha Touch框架,该框架是世界上第一个基于HTML5的Mobile App框架。同时,ExtJS更名为Sencha,JQTouch的创始人David Kaneda,以及Raphaël的创始人也已加盟Sencha团队

  1. 这是一个独立的库,包括 UI 部件、DOM 操作、Ajax 以及其他
  2. 无需依赖其他库
  3. 采用以 JavaScript 为核心的方法,基本上不需要写 HTML
  4. 提供大的对象模型,提供更多的功能,但是学习周期很长
  5. 统一的编程代码结构和要求,良好组织的代码易于维护
  6. 提供内置的服务器和本地存储的抽象层,可在关系数据基础上轻松执行 CRUD 操作。
  7. 提供内置的工具用于创建 iOS 和 Android 本地运行的程序
  8. 比 jQuery Mobile 支持的设备要少

jQuery Mobile的优缺点
         jQuery Mobile是jQuery 在手机上和平板设备上的版本。jQuery Mobile 不仅会给主流移动平台带来jQuery核心库,而且会发布一个完整统一的jQuery移动UI框架。支持全球主流的移动平台。此框架简单易用。页面开发主要使用标记,无需或仅需很少 JavaScript。
此框架简单易用。页面开发主要使用标记,无需或仅需很少 JavaScript。

    1. JM 只是一个 UI 库,依赖于 jQuery 和 jQuery UI 的 DOM 操作、Ajax 和其他库
    2. 为了创建 UI 部件,你只需要编写 HTML 即可,JM 为了对这些 HTML 元素进行修饰
    3. 可方便的重用已有的 HTML 代码
    4. 一些简单的应用直接用 HTML 即可实现,无需 JavaScript
    5. JM 具有相对小的对象模型,可以快速轻松学习,特别是他是一个 jQuery 的插件
    6. JM 对代码没有特定的要求,这可能是非常灵活的,但维护难度也加大
    7. 易于和其他框架进行集
    8. 比 Sencha Touch 支持更多的设备
    9. 不依赖某个特定的供应商

移动Web框架:jQuery Mobile VS Sencha Touch的更多相关文章

  1. jQuery Mobile和Sencha Touch哪个更适合你?

    纯粹的总结一下移动web开发框架,移动web开发框架有jQuery Mobile .Sencha Touch等等,他们都来源于web开发,是成熟的框架,jQuery Mobile出自于jQuery家族 ...

  2. [转]使用 jQuery Mobile 与 HTML5 开发 Web App —— jQuery Mobile 事件详解

    在前文<使用 jQuery Mobile 与 HTML5 开发 Web App —— jQuery Mobile 默认配置与事件基础>中,Kayo 对 jQuery Mobile 事件的基 ...

  3. HTML5开发移动web应用—JQuery Mobile(1)

    JQuery Mobile是一个简单易用的web移动app开发框架.使用它就像使用jQuery一样,引入必要的文件就可以. 最基础的jQuery Mobile文件的结构代码例如以下: <body ...

  4. html5文章 -- 使用 jQuery Mobile 与 HTML5 开发 Web App —— jQuery Mobile 基础

    这篇文章是使用 jQuery Mobile 与 HTML5 开发 Web App 系列的第二篇,在本文以及接下来的数篇文章 Kayo 将会介绍 jQuery Mobile 的组件.事件响应以及可以调用 ...

  5. HTML5开发移动web应用—JQuery Mobile(2)-导航栏和页脚

    导航栏部分的代码一般放置在data-role为header的div的内. <div data-role="header"> <a href="#&quo ...

  6. (转)Sencha Touch和jQuery Mobile的比较

    原文:http://extjs.org.cn/node/664 Sencha Touch和jQuery Mobile的比较 Posted 周三, 08/07/2013 - 10:07 by admin ...

  7. 选择移动web开发框架研究——有mui、frozenui以及Sencha Touch等

    纯粹的总结一下移动web开发框架,移动 web开发框架有jQuery Mobile .Sencha Touch等等,他们都来源于web开发,是成熟的框架,jQuery Mobile出自于jQuery家 ...

  8. Sencha Touch 和 jQuery Mobile 的比较

    Sencha Touch 和 jQuery Mobile 的比较 英文原文:Sencha Touch vs jQuery Mobile 标签: Sencha Touch jQuery Mobile 1 ...

  9. Sencha Touch和jQuery Mobile的比较

    第一组-行销和平台支持 Sencha Touch和jQuery Mobile都以HTML5框架著称.jQuery Mobile谦虚的说自己只是内建于所有流行的移动设备平台,而Sencha Touch则 ...

随机推荐

  1. zookeeper(1)

    参考文档:zookeeper中文网 一.介绍安装 zookeeper 是一个高效的分布式协调服务,它暴露了一些公用服务,比如命名/配置/同步控制/群组服务等.我们可以使用ZK来实现一些功能,例如:达成 ...

  2. 使用Cookie来统计浏览次数,当天重复刷新不增加

    这是一种不严谨的做法,在浏览量不是很重要的时候可以使用 var oldCookie = Request.Cookies["newsCookie"]; if (oldCookie = ...

  3. Openjudge-计算概论(A)-苹果和虫子

    描述 你买了一箱n个苹果,很不幸的是买完时箱子里混进了一条虫子.虫子每x小时能吃掉一个苹果,假设虫子在吃完一个苹果之前不会吃另一个,那么经过y小时你还有多少个完整的苹果? 输入输入仅一行,包括n,x和 ...

  4. mvc路由参数注解

    routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); //过滤掉禁止访问的路由 routes.MapRoute( name: &quo ...

  5. 【Machine Learning in Action --4】朴素贝叶斯电子邮件垃圾过滤

    摘要:这里用的是词袋模型,即一个词在文档中出现不止一次,每个单词可以出现多次. 1.准备数据:切分文本 前一节过滤网站恶意留言中词向量是给定的,下面介绍如何从文本文档中构建自己的词列表 先举例说明,在 ...

  6. Windows下QT4.8.4编译环境的搭建(转载http://blog.csdn.net/bestgonghuibin/article/details/38933141)

    开始使用QT了,所以第一步就是把环境搭起来,这里小记一下,以免以后忘记. 1. 下载安装文件 要使用QT功能,那么必须要下载QT的源码,还必须要一个是用QT的编译环境,可以是VS2010,也可以是专用 ...

  7. C语言中结构体定义实际上相当于变量入栈

    struct context { int edi; int esi; int ebx; int ebp; int eip;}; 对应的入栈顺序是 pushl %esp pushl %eip pushl ...

  8. postgresql删除属性

    PostgreSQL update and delete property from JSONB column up vote 2 down vote favorite From this artic ...

  9. 一个有用的shell脚本

    #!/bin/bash #if [ $1 -eq null ]; then # echo "please input params1!" # exit #fi #if [ $2 - ...

  10. java写文件时,输出不完整的原因以及解决方法close()或flush()

    在java的IO体系中,写文件通常会用到下面语句 BufferedWriter bw=new BufferedWriter(new FileWriter("sql语句.txt")) ...