自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

淺談Sencha Touch初體驗(yàn)

移動(dòng)開發(fā)
前不久基于JavaScript編寫的Ajax框架ExtJS,將現(xiàn)有的ExtJS整合JQTouch、Raphaël庫(kù),推出適用于最前沿Touch Web的Sencha Touch框架,該框架是世界上第一個(gè)基于HTML5的Mobile App框架。

Sencha Touch可以讓你的Web App看起來(lái)像Native App。美麗的用戶界面組件和豐富的數(shù)據(jù)管理,全部基于最新的HTML5和CSS 3的 WEB標(biāo)準(zhǔn),全面兼容AndroidApple iOS設(shè)備。

一、什么是Sencha Touch

Sencha Touch是一個(gè)應(yīng)用手持移動(dòng)設(shè)備的前端js框架,與extjs是同一個(gè)門派的,它繼承了extjs的優(yōu)點(diǎn)和缺點(diǎn)。功能很強(qiáng)大,效果很炫麗,效率不高。

二、例子來(lái)了

效果圖:Sencha touch官方一個(gè)list的example

淺談Sencha Touch初體驗(yàn)

PS:模擬器訪問本地server的地址是10.0.2.2:8080,而不是127.0.0.1:8080

1、導(dǎo)入touch的相關(guān)js,css以及資源文件

2、index.html

  1. <!DOCTYPEhtml> 
  2. <html> 
  3. <head> 
  4. <metahttp-equivmetahttp-equiv="Content-Type"content="text/html; charset=utf-8"> 
  5. <metanamemetaname="viewport"content="width=device-width; initial-scale=1.0; maximum-scale=1.0; minimum-scale=1.0; user-scalable=0;" /> 
  6. 6:<title>Sencha Touch List Example</title> 
  7. <!-- import touch css and js --> 
  8. <linkrellinkrel="stylesheet"href="touch/resources/css/sencha-touch.css"type="text/css"> 
  9. <scripttypescripttype="text/javascript"src="touch/sencha-touch-debug.js">
  10. </script><scripttypescripttype="text/javascript"src="src/index.js"></script> 10:
  11. </head> 
  12. <body></body>   
  13. </html> 

3、index.js

  1. /**  
  2.      * 前言:  
  3.      * 此例子來(lái)自sencha touch的官方example  
  4.      * 注釋用語(yǔ)如有不當(dāng)請(qǐng)見諒。  
  5.      */  
  6. //相信這是每個(gè)頁(yè)面都是一樣的  
  7.     Ext.setup({  
  8.         tabletStartupScreen: 'tablet_startup.png',  
  9.         phoneStartupScreen: 'phone_startup.png',  
  10.    icon: 'icon.png',  
  11. glossOnIcon: false,  
  12. onReady : function() {  
  13.            //注冊(cè)一個(gè)名為“Contact”的模型,顯示的字段為firstName和lastName  
  14.            Ext.regModel('Contact', {  
  15.                fields: ['firstName', 'lastName']  
  16.            });  
  17.            //定義一個(gè)對(duì)象,有點(diǎn)類似Android里面的BaseAdapter  
  18.            var groupingBase = {  
  19.                itemTpl: '<div class="contact2"><strong>{firstName}</strong> {lastName}</div>',  
  20.                selModel: {//選擇模型,單選;應(yīng)該還有多選  
  21.                    mode: 'SINGLE',  
  22.                    allowDeselect: true  
  23.                },  
  24.                grouped: true,//分組  
  25.                indexBar: true, //索引欄  
  26.                  
  27.                //定義點(diǎn)擊事件  
  28.                onItemDisclosure: {  
  29.                    scope: 'test',  
  30.                    //事件處理  
  31.                    handler: function(record, btn, index) {  
  32.                        alert('Disclose more info for ' + record.get('firstName'));  
  33.                    }  
  34.                },  
  35.                //數(shù)據(jù)倉(cāng)庫(kù)  
  36.                store: new Ext.data.Store({  
  37.                    model: 'Contact',//與上面注冊(cè)的模型對(duì)應(yīng)  
  38.                    sorters: 'firstName',//排序字段  
  39.                      
  40.                    //分組title顯示的數(shù)據(jù)源,為firstName的首字母  
  41.                    getGroupString : function(record) {  
  42.                        return record.get('firstName')[0];  
  43.                    },  
  44.                    //就是數(shù)據(jù)了  
  45.                    data: [  
  46.                        {firstName: 'Aaron', lastName: 'Conran'},  
  47.                        {firstName: 'Ape', lastName: 'Evilias'},  
  48.                        {firstName: 'Dave', lastName: 'Kaneda'},  
  49.                        {firstName: 'Michael', lastName: 'Mullany'},  
  50.                        {firstName: 'Abraham', lastName: 'Elias'},  
  51.                        {firstName: 'Jay', lastName: 'Robinson'},  
  52.                        {firstName: 'Tommy', lastName: 'Maintz'},  
  53.                        {firstName: 'Ed', lastName: 'Spencer'},  
  54.                        {firstName: 'Jamie', lastName: 'Avins'},  
  55.                        {firstName: 'Ed', lastName: 'Spencer'},  
  56.                        {firstName: 'Jamie', lastName: 'Avins'},  
  57.                        {firstName: 'Aaron', lastName: 'Conran'},  
  58.                        {firstName: 'Dave', lastName: 'Kaneda'},  
  59.                        {firstName: 'Ape', lastName: 'Evilias'},  
  60.                        {firstName: 'Dave', lastName: 'Kaneda'},  
  61.                       {firstName: 'Michael', lastName: 'Mullany'},  
  62.                        {firstName: 'Abraham', lastName: 'Elias'},  
  63.                        {firstName: 'Jay', lastName: 'Robinson'},  
  64.                        {firstName: 'Tommy', lastName: 'Maintz'},  
  65.                        {firstName: 'Ed', lastName: 'Spencer'},  
  66.                        {firstName: 'Jamie', lastName: 'Avins'},  
  67.                        {firstName: 'Aaron', lastName: 'Conran'},  
  68.                        {firstName: 'Dave', lastName: 'Kaneda'},  
  69.                        {firstName: 'Michael', lastName: 'Mullany'},  
  70.                        {firstName: 'Abraham', lastName: 'Elias'},  
  71.                        {firstName: 'Jay', lastName: 'Robinson'},  
  72.                        {firstName: 'Tommy', lastName: 'Maintz'},  
  73.                        {firstName: 'Ed', lastName: 'Spencer'},  
  74.                        {firstName: 'Jamie', lastName: 'Avins'},  
  75.                        {firstName: 'Aaron', lastName: 'Conran'},  
  76.                        {firstName: 'Dave', lastName: 'Kaneda'},  
  77.                       {firstName: 'Michael', lastName: 'Mullany'},  
  78.                        {firstName: 'Abraham', lastName: 'Elias'},  
  79.                        {firstName: 'Jay', lastName: 'Robinson'},  
  80.                        {firstName: 'Michael', lastName: 'Mullany'},  
  81.                        {firstName: 'Abraham', lastName: 'Elias'},  
  82.                       {firstName: 'Jay', lastName: 'Robinson'},  
  83.                        {firstName: 'Zed', lastName: 'Zacharias'}  
  84.                    ]  
  85.                })  
  86.            };  
  87.            /**  
  88.             * 應(yīng)該是判斷設(shè)備類型把  
  89.             * Phone和其他類型有所不同,主要就是屏幕大小了  
  90.             */  
  91.            if (!Ext.is.Phone) {  
  92.                new Ext.List(Ext.apply(groupingBase, {  
  93.                    floating: true,  
  94.                   width: 350,  
  95.                    height: 370,  
  96.                    centered: true,  
  97.                    modal: true,  
  98.                   hideOnMaskTap: false  
  99.               })).show();  
  100.           }  
  101.           else {  
  102.               new Ext.List(Ext.apply(groupingBase, {  
  103.                   fullscreen: true  //全屏  
  104.               }));  
  105.          }  
  106.       }  
  107.   }); 

4、部署到服務(wù)器訪問就行了。

END?。?!

小結(jié):淺談Sencha Touch初體驗(yàn)的內(nèi)容介紹完了,希望通過(guò)本文的學(xué)習(xí)能對(duì)你有所幫助!

責(zé)任編輯:zhaolei 來(lái)源: 互聯(lián)網(wǎng)
相關(guān)推薦

2010-11-22 10:31:17

Sencha touc

2011-09-02 16:21:08

Sencha Touc自動(dòng)生成工具

2011-09-05 13:53:08

Sencha Touc列表

2011-09-05 10:27:02

Sencha Touc手機(jī)應(yīng)用Android

2011-09-05 13:48:36

Sencha Touc圖標(biāo)

2011-09-02 15:18:49

Sencha Touc

2011-07-26 09:41:50

Sencha Touc特性HTML 5

2011-07-25 15:55:21

Sencha ToucHtml 5

2011-07-25 16:21:22

Sencha touc

2011-07-26 09:46:53

Sencha Touc

2011-07-25 16:41:16

Sencha Touc

2011-09-05 10:39:03

Sencha Touc離線存儲(chǔ)數(shù)據(jù)庫(kù)

2011-11-28 13:42:55

Sencha Touc組件選擇器

2011-09-05 14:09:06

Sencha Touc函數(shù)

2011-09-02 15:12:29

PhoneGapSencha Touc

2011-09-05 11:23:26

EclipseSencha Touc框架

2011-09-05 12:49:59

Sencha Touc事件

2012-03-08 22:31:28

Sencha Touc

2011-09-02 16:42:51

Sencha ToucWeb應(yīng)用

2011-10-26 10:21:40

Sencha Touc組件
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)