BOM(浏览器对象模型(BrowserObjectModel)),允许访问和操控浏览器窗口。研发者通过使用BOM,可移动窗口、更改状态栏文本、执行其它不与页面内容发生直接联系的操作。

本文将从ExtJS中以下四类服务入手:
 
1,命名空间
2,用户代理对象
3,Cookie
4,定时调用函数(将于下一博文详细陈述)
 
 
命名空间
 
ExtJS的命名空间是在window对象所提供的全局范围内建立相互独立的范围,概念上类似于Java的package。
 
Ext.namespace("com.baidu");
console.info(typeof com);//object
console.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(),就能将字符串转换为原来的对象类型。

 

ExtJS浏览器对象模型BOM——命名空间和用户代理对象、Cookie的更多相关文章

  1. 第8章 浏览器对象模型BOM 8.1 window对象

    ECMAScript是javascript的核心,但如果要在web中使用javascript,那么BOM(浏览器对象模型)则无疑是真正的核心.BOM提供了很多对象,用于访问浏览器的功能,在浏览器之间共 ...

  2. 第8章 浏览器对象模型BOM 8.2 location对象

    location 是最有用的 BOM对象之一,它提供了与当前窗口中加载的文档有关的信息,还提供了一些导航功能.事实上, location 对象是很特别的一个对象,因为它既是 window 对象的属性, ...

  3. JavaScript高级程序设计(第3版)学习笔记·第8章——浏览器对象模型BOM

    转自:http://www.shaoqun.com/a/43768.aspx 访问和操作浏览器窗口的模型称为浏览器对象模型BOM(Browser Object Model),但习惯上是把所有针对浏览器 ...

  4. js浏览器对象模型-BOM

    bom browse object model 浏览器对象模型. 也就是window对象下面的东西. location 对象 window.location.href 表示打开窗口的路径. windo ...

  5. 浏览器对象模型BOM小结

    概念 BOM (Browser Object Model) 浏览器对象模型 BOM提供了独立于内容而与浏览器窗口进行交互的对象 BOM主要用于管理窗口与窗口之间的通讯,因此其核心对象是window B ...

  6. 浏览器对象模型BOM

    第二章 浏览器对象模型BOM 1.作用:操作窗口:提供导航对象:提供定位对象:浏览器上方的地址栏:提供跟屏幕相关对象:提供对Cookie的支持 2.根元素:window:代表整个窗口:window,o ...

  7. 浏览器对象模型BOM(Browser Object Model)

    1.结构 BOM是Browser Object Model的缩写,简称浏览器对象模型 BOM提供了独立于内容而与浏览器窗口进行交互的对象 由于BOM主要用于管理窗口与窗口之间的通讯,因此其核心对象是w ...

  8. JavaScript编程:浏览器对象模型BOM

    4.浏览器对象模型BOM: document.body.offsetwidth可以获取浏览器宽度. Window对象:          窗口操作:            1.moveBy(dx,dy ...

  9. JavaScript 浏览器对象模型 (BOM)

    浏览器对象模型 (BOM) 使 JavaScript 有能力与浏览器“对话”. 浏览器对象模型 (BOM) 浏览器对象模型(Browser Object Model)尚无正式标准. 由于现代浏览器已经 ...

随机推荐

  1. 关于data-属性

    关于data-属性 现有需求如下,也就是类似做一个tab页的切换如下图: 因为这里要记录一下jquery里的“data-属性”的用法,所以忽略类似的组件. 往HTML标签上添加任意以 "da ...

  2. iPhone开发随想:rand()还是arc4random()

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://bj007.blog.51cto.com/1701577/544006 今天在iP ...

  3. 清除html中的标记,只留下文字

    /// <summary>/// 清除html中的标记,只留下文字./// </summary>/// <param name="HTML">& ...

  4. linux:alias

    linux系统下常用一个“命令”ll,它实质上是一个别名,而非命令. 我们用它的前提是,在~/.bashrc文件里打开,默认有条记录: #alias ll=’ls -l’ 这就是别名的格式.把注释去掉 ...

  5. 【poj1743】Musical Theme 【后缀自动机】

    题意 给出一个n个数字的序列,找出相同变化趋势且不重叠的两个最长子串. 分析 这个题以前应该用后缀数组+二分做过.学了后缀自动机后可以用后缀自动机搞一下. 先差分,然后把查分后的数组建SAM.然后对于 ...

  6. Java研发书单

    Java研发书单 计算机基础:<深入理解计算机系统><计算机网络> 网络方面:<TCP/IP协议卷一><unix网络编程卷一>(部分章节,JAVA主要是 ...

  7. code1225 搭积木

    题目分析:将当前层定义为第h层,共用了n块积木,本层积木数为m,f(h,n,m) 那么可以扩展数两种状态:f(h-1,n-m,m-1),f(h-1,n-m,m+1) 直接搜索可能的数据达到h^m,超时 ...

  8. 洛谷 P1103 书本整理(动规)

    洛谷 P1103 书本整理 题目描述 Frank是一个非常喜爱整洁的人.他有一大堆书和一个书架,想要把书放在书架上.书架可以放下所有的书,所以Frank首先将书按高度顺序排列在书架上.但是Frank发 ...

  9. cs231n(一)

    1.Nearest Neighbor Classifier 计算未分类数据(图片)与已标记类别的训练数据(training set)的距离(L1,L2等距离),然后返回与训练数据(图片)最小距离的图片 ...

  10. loadlibrary 文档

    http://www.pinvoke.net/default.aspx/kernel32.LoadLibrary LIBRARY ModelBank EXPORTS CND;GBlackScholes ...