JavaScript Navigator 对象:得到有关浏览器的信息
Navigator 对象
JavaScript Navigator 对象包含了有关浏览器的相关信息。
提示:Navigator 对象虽然没有明确的相关标准,但所有浏览器都支持该对象。
Navigator 对象属性
Navigator 对象属性为只读属性,下面表中列出了各属性及以 IE8 为例得到的值。
属性 | 描述 | IE8 的结果 |
---|---|---|
navigator.appCodeName | 取得浏览器的代码名 注1 | Mozilla |
navigator.appName | 取得浏览器的名称注2 | Microsoft Internet Explorer |
navigator.appVersion | 取得浏览器的平台和版本信息 | 4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30) |
navigator.browserLanguage | 取得浏览器使用的语言(仅 IE 支持 注3) | zh-cn |
navigator.cookieEnabled | 检测浏览器是否启用 cookie 支持,返回布尔值,true 表示支持 | true |
navigator.cpuClass | 取得浏览器所在系统的 CPU 等级(仅 IE 支持 注4) | x86 |
navigator.onLine | 检测系统是否处于脱机模式,返回布尔值,false 表示脱机(仅 IE 支持 注5) | true |
navigator.platform | 得到浏览器所在的操作系统平台 | Win32 |
navigator.systemLanguage | 得到浏览器所在操作系统使用的语言(仅 IE 支持 注6) | zh-cn |
navigator.userAgent | 得到浏览器用于 HTTP 请求的用户代理头的值 | Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30) |
navigator.userLanguage | 得到浏览器所在操作系统的自然语言设置(仅 IE 支持 注7) | zh-cn |
说明
- navigator.appCodeName:IE/Firefox/Chrome 系列浏览器中,它的值都是 "Mozilla"。
- navigator.appName:Firefox/Chrome 均为 Netscape。
- navigator.browserLanguage:Firefox/Chrome 返回 "undefined"。
- navigator.cpuClass:Firefox/Chrome 返回 "undefined"。
- navigator.onLine:Firefox/Chrome 返回 "undefined"。
- navigator.systemLanguage:Firefox/Chrome 返回 "undefined"。
- navigator.userLanguagee:Firefox/Chrome 返回 "undefined"。
说明:利用 Navigator 对象提供的浏览器信息,可以方便的得到访问用户的浏览器名称及版本,具体参看《JavaScript 得到用户浏览器信息的实例》。
Navigator 对象方法
Navigator 对象有如下 2 个方法:
- navigator.javaEnabled():检测浏览器是否启用了 java 支持,返回布尔值,true 表示支持。
- navigator.taintEnabled():检测浏览器是否启用数据污点(data tainting),返回布尔值,true 表示启用。
延伸阅读
JavaScript 数据污点(data tainting):Navigator 3.0 中的 JavaScript 有一个叫做数据污点的特性,其中保留了安全限制,但是提供了对于页面中指定部件的安全访问手段。当允许数据污点的时候,一个窗口中的 JavaScript 可以观看另一个窗口的属性,而不管另外的窗口是从哪个服务器上装入的;而当禁止数据污点的时候,脚本不能访问其它服务器窗口的任何属性。