一.SenchaTouch的hello world实例:

Ext.application({
name:'myapp',
icon:'images/icon.png',
glossOnIcon:false,
phoneStartupScreen:'images/phone_startup.png',
tabletStartupScreen:'images/tablet_startup.png',
launch:function(){
var panel=Ext.create('Ext.Panel',{
fullscreen:true,
id:'mypanel',
width:'100%',
style:'color:red',
html:'hello sencha touch-2.4.2!'
});
Ext.Viewport.add(panel);
}
});

二.SenchaTouch中的动态加载技术:
1.同步加载:
优势:可以不必指定应用程序中使用哪些类;
缺点:①不利于调试;②由于XHR的限制,不能实现跨域获取数据;③调式应用程序时必须使用Web服务器
注意:在使用同步加载技术的时候,不能使用sencha-touch-debug.js或者sencha-touch.js脚本文件,而必须使用sencha-touch-all-debug.js或者sencha-touch-

all.js脚本文件。

2.异步加载:
优势:①可以实现跨域获取数据的功能;②调试时不需要Web服务器,可以通过文件系统协议(例如:file://path/to/your/index.html)直接调试磁盘中的某个文

件;
缺点:必须手动指定应用程序中所要使用的类;
注意:使用异步加载时,需要通过Ext.require()方法来指定应用程序中所需使用的类,具体操作如下:
①指定单个类:Ext.require(‘Ext.Img’);
②使用通配符指定某个包中所有类:Ext.require(‘Ext.data.*’);
③使用通配符指定所有类:Ext.require(‘*’);
④通过数组进行多重指定:Ext.require([‘Ext.Img’,‘Ext.Panel’]);
⑤指定使用除了data包中的类之外的所有类:Ext.exclude(‘Ext.data.*’).require(‘*’);
⑥指定使用data包中除了TreeStore类之外的所有类:Ext.exclude(‘Ext.data.TreeStore’).require(‘Ext.data.*’);

三.SenchaTouch在新版谷歌浏览器中painted事件无法触发以及carousel控件,togglefield控件,滚动条失效等问题的解决办法:

在我们的app.js文件中加入以下脚本:
Ext.override(Ext.util.SizeMonitor, {
constructor: function (config) {
var namespace = Ext.util.sizemonitor;

if (Ext.browser.is.Firefox) {
return new namespace.OverflowChange(config);
} else if (Ext.browser.is.WebKit) {
if (!Ext.browser.is.Silk && Ext.browser.engineVersion.gtEq('535') && !Ext.browser.engineVersion.ltEq('537.36')) {
return new namespace.OverflowChange(config);
} else {
return new namespace.Scroll(config);
}
} else if (Ext.browser.is.IE11) {
return new namespace.Scroll(config);
} else {
return new namespace.Scroll(config);
}
}
});
Ext.override(Ext.util.PaintMonitor, {
constructor: function (config) {
if (Ext.browser.is.Firefox || (Ext.browser.is.WebKit && Ext.browser.engineVersion.gtEq('536') && !Ext.browser.engineVersion.ltEq

('537.36') && !Ext.os.is.Blackberry)) {
return new Ext.util.paintmonitor.OverflowChange(config);
}
else {
return new Ext.util.paintmonitor.CssAnimation(config);
}
}
});

JavaScript开发之路01(初识Sencha Touch框架)的更多相关文章

  1. JavaScript开发之路02(Sencha Touch使用时常见问题及解决办法)

    1.Sencha中使用组件后通过layout: 'vbox'指定页面布局为垂直盒布局并且组件的高度采用height: '百分比'指定时,组件的背景色通过style: 'background:#F6F6 ...

  2. android开发之路01

    一.android系统被分为4个层次:1.最下层的是linux核心,包括多个驱动程序,提供了操作系统应该具备的核心功能:2.在linux核心之上,包括两个部分,一部分是Android Runtime( ...

  3. python开发之路:python数据类型(老王版)

    python开发之路:python数据类型 你辞职当了某类似微博的社交网站的底层python开发主管,官还算高. 一次老板让你编写一个登陆的程序.咔嚓,编出来了.执行一看,我的妈,报错? 这次你又让媳 ...

  4. sencha touch 框架的几种核心脚本文件之间的区别

    sencha-touch-debug.js      供开发时用sencha-touch.js   供发布时用sencha-touch-all.js All     供不能使用SDK构建应用程序时,将 ...

  5. android开发之路09(浅谈SQLite数据库01)

    1.SQLite数据库: SQLite 是一个开源的嵌入式关系数据库,实现自包容.零配置.支持事务的SQL数据库引擎. 其特点是高度便携.使 用方便.结构紧凑.高效.可靠. 与其他数据库管理系统不同, ...

  6. Sea.js创始人玉伯的前端开发之路

    在Web应用程序的用户体验越来越被重视的今天,前端开发的地位也上升到了前所未有的高度,而随之而来的也有更多的挑战. 为了将前端开发者繁重的工作变得简单,框架应运而生.国内也不乏一些非常优秀的前端开发框 ...

  7. 【开源专访】Sea.js创始人玉伯的前端开发之路

    摘要:玉伯,淘宝前端类库 KISSY.前端模块化开发框架SeaJS.前端基础类库Arale的创始人.本期[开源专访]我们邀请玉伯来为我们分享一些关于前端框架.前端开发的那些事,以及前端大牛是如何炼成的 ...

  8. Python 开发之路

    强烈推荐地表最强博客:http://www.cnblogs.com/wupeiqi Python开发[第一篇]:目录 Python开发[第二篇]:初识Python Python开发[第三篇]:Pyth ...

  9. Python-WEB前端-入门到进阶开发之路

    HTTP: Python-HTTP 概况 HTML: Python-HTML基础 Python-form表单标签 Python-HTML CSS 练习 CSS: Python-CSS入门 Python ...

随机推荐

  1. Android 4.4 音量调节流程分析(二)

    之前在Android 4.4 音量调节流程分析(一)里已经有简单的分析音量控制的流程,今天想接着继续分析下音量大小计算的方法.对于任一播放文件而言其本身都有着固定大小的音量Volume_Max,而在A ...

  2. 五、python使用模块

    if __name__=='__main__':用法: 当我们在命令行运行模块文件时,Python解释器把一个特殊变量__name__置为__main__,而如果在其他地方导入该hello模块时,if ...

  3. 第二百八十八天 how can I坚持

    明天,就要回济南了.早上八点的票,去火车站还得一个半小时,六点就得起床啊,好早,忍了. 这两天又没法更新日志了.周一才能回来. 今天好忙,事情好杂. 其实不想请假. 算了,睡觉了,没什么可写的了.是没 ...

  4. Spark生态之Spark Core

  5. 新浪云sae 邮件服务 quicksend()

    <?php header("Content-Type: text/html;charset=utf-8"); $mail = new SaeMail(); $form_Con ...

  6. jquery easyui的layout

    1.创建一个布局:layout是一个容器,它有5个区域:north(北),south(南),east(东),west(西):center(中)-----------学习中文网地址 <body c ...

  7. POJ1189钉子和小球(DP)

    对钉子DP,如果钉子存在DP[i+1][j]+=DP[i][j]; DP[i+1][j+1]+=DP[i][j]; 如果不存在DP[i+2][j+1]+=4*DP[i][j]; 见代码:(有一个比较坑 ...

  8. CodeForces 732B Cormen — The Best Friend Of a Man (贪心)

    题意:给定n和k表示,狗要在任意连续两天散步次数要至少为k,然后就是n个数,表示每天的时间,让你增加最少次数使得这个条件成立. 析:贪心,策略是从开始到最后暴力,每次和前面一个相比,如果相加不够k,那 ...

  9. EasyUI datetimebox设置默认值为当前时间

    设置value="${notices.release_time}" <input class="easyui-validatebox easyui-datetime ...

  10. HibernateDaoSupport的使用

    1.HibernateDaoSupport是有spring提供的一个hibernate模版工具类,或不多说,直接上代码 接口 IGenericDao.java package org.hibernat ...