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. MyBatis初识(通过小实例清晰认识MyBatis)

    1.MyBatis框架: MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀的持久层框架.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可 ...

  2. LNMP 参数调优 ( 无注释 )

    简介: PHP FastCGI 优点 1.PHP 脚本运行速度更快.PHP 解释程序被载入内存而不用每次需要时从存储器读取,极大的提升了依靠脚本运行站点的性能. 2.需要使用的系统资源更少.由于服务器 ...

  3. visjs使用小记-1.创建一个简单的网络拓扑图

    1.插件官网:http://visjs.org/ 2.创建一个简单的网络拓扑图 <!doctype html> <html> <head> <title> ...

  4. 使用JavaScript调用aspx后台代码

    方法1:js同步调用 触发: onclick="javascript:share('<%# Eval("id_File") %>')" 页面函数: ...

  5. Unity3D UI史

    http://www.cnblogs.com/hammerc/p/4837204.html 扫码时备注或说明中留下邮箱付款后如未回复请至https://shop135452397.taobao.com ...

  6. APP安全之代码混淆防止反编译查看真实的头文件函数声明

    现在有的公司对自己的爱屁屁(APP)安全上有重视,所以本篇讲一下代码混淆,即使别人反编译出来,也看不出来头文件的信息. 上菜: 1.首先安装class-dump,下载地址:http://steveny ...

  7. IDEA 提示找不到 javax 等 tomcat 的相关包

    网上很多方法都告诉你,把 javax 的 libs 拷贝到项目下吧,简直简单粗暴.其实有更好的办法. 1.首先进入 Run 其中的 Run/Debug Configurations,在 Server ...

  8. 知方可补不足~Sqlserver中的几把锁和.net中的事务级别 回到目录

    当数据表被事务锁定后,我们再进行select查询时,需要为with(锁选项)来查询信息,如果不加,select将会被阻塞,直到锁被释放,下面介绍几种SQL的锁选项 SQL的几把锁 NOLOCK(不加锁 ...

  9. vmware workstation环境下虚拟机固定ip的设置

    一.准备 (1)vmware workstation (2)centOS 6.5 二.配置 采用nat模式对虚拟机进行固定ip配置,nat模式相当于在windows的操作系统下构建了一个独立的内部局域 ...

  10. nltk 之 snowball 提取词干-乾颐堂

    机器学习中很重要的应用场景就是机器自动分类,而分类的关键是词干提取.所以我们要用到snowball.下面说一下snowball 提取词干的两种方法. 两种方法: 方法一: >>> f ...