標籤:des style blog java color 使用 os strong
BOM(瀏覽器物件模型(BrowserObjectModel)),允許訪問和操控瀏覽器視窗。研發者通過使用BOM,可移動視窗、更改狀態列文本、執行其它不與頁面內容發生直接聯絡的操作。本文將從ExtJS中以下四類服務入手: 1,命名空間2,使用者代理程式對象3,Cookie4,定時調用函數(將於下一博文詳細陳述)
命名空間
ExtJS的命名空間是在window對象所提供的全域範圍內建立相互獨立的範圍,概念上類似於Java的package。
Ext.namespace("com.baidu");console.info(typeof com);//objectconsole.info(typeof com.baid);//object 使用Ext.namespace對“com.baidu”字串進行解析,完成後變成兩個對象,一個是com,另一個是com擁有的屬性baidu。憑藉Ext.namespace(),實際開發時可以避免工作夥伴或是第三方開發商造成的命名衝突 在項目中可以建立這樣的命名空間,從而在各個模組之間讀取共用資料時使用,但應該限制為自讀變數。如果模組之間要交換資料,最好使用事件機制或是將資料互動交給後台伺服器。
使用者代理程式對象
使用者代理程式對象指的是window.navigator.userAgent這個屬性,該屬性儲存區使用者瀏覽器的
型號、作業系統、渲染引擎的名稱等資訊,這些都是判斷瀏覽器類型的一些條件。以往,部分瀏覽器廠商都會在這個屬性上做手腳,讓指令碼誤認或是誤判斷瀏覽器的類型,因此,程式員必須編寫非常複雜的指令碼來作出判斷。下面介紹Ext簡單的布爾條件運算式
| 屬性 |
說明 |
| Ext.isAir |
判斷執行環境是否為Adobel AIR |
| Ext.isBorderBox |
判斷執行的IE瀏覽器是否處於非嚴謹(non-strict)模式 |
| Ext.isGecko/Ext.isGecko2/Ext.isGecko3 |
判斷是否為某個版本的Gecko渲染引擎 |
| Ext.isChrome |
判斷是否為Google Chrome瀏覽器 |
| Ext.isIE/Ext.isIE6/Ext.isIE7/Ext.isIE8 |
判斷是否為IE瀏覽器 |
| Ext.isSafari/Ext.isSafari2/Ext.isSafari3/Ext.isSafari4 |
判斷是否為某個版本的Safari瀏覽器 |
| Ext.isWebkit |
判斷瀏覽器是否為Webkit瀏覽器 |
| Ext.isStrict |
判斷瀏覽器是否處於嚴謹模式 |
| Ext.isWindows |
判斷使用者作業系統為Windows |
| Ext.isMac |
判斷使用者作業系統為Mac |
| Ext.isLinux |
判斷使用者作業系統為Linux |
Cookie Cookie操作非常簡單,只有三個方法: clear(name) :清除為name設定的值 set(name,value) : 設定name的值為value get(name) : 得到name設定的值
var simleValue = "a simple string";var compleValue = { name : "comple", description : "I‘m so complex" } ;Ext.util.Cookies.set(‘simple‘,simpleValue);Ext.util.Cookies.set(‘complex‘,compleValue);Ext.util.Cookies.set(‘complexJSON‘,Ext.encode(complexVaule));
Cookie只能儲存文字,如果要儲存物件,就必須把對象JSON化,就是調用Ext.encode(),這個方法會將複雜的對象結構轉換為字串,取出時只要愛班字串丟給Ext.decode(),就能將字串轉換為原來的物件類型。