navigator 对象

转载: http://www.itlearner.com/code/js_ref/brow1.htm

包含了正在使用的 Navigator 的版本信息。

客户端对象  
实现版本 Navigator 2.0       Navigator 3.0: 添加了 mimeTypes 和 plugins 属性;添加了 javaEnabled 和 taintEnabled 方法。 Navigator 4.0: 添加了 language 和 platform 属性;添加了 preference 方法。

创建源

JavaScript 客户端运行时刻引擎自动创建 navigator 对象。

描述

使用 navigator 对象可以决定你的用户正在使用的 Navigator 的版本,用户的 Navigator 可以控制的 MIME 类型,用户已经安装的插件。所有这些 navigator 的属性都是只读的。

属性概览

appCodeName 指定浏览器的代码名称。
appName 指定浏览器的名称。
appVersion 指定 Navigator 的版本信息。
language 标明正在使用的 Navigator 的翻译语种。
mimeTypes 客户端支持的所有 MIME 类型数组。
platform 标明了 Navigator 编译适合的机器类型。
plugins 客户端已安装的所有插件数组。
userAgent 指定了用户代理头。

方法概览

javaEnabled 测试是否允许 Java。
plugins.refresh 使新安装的插件有效,并可选重新装入已打开的包含插件的文档。
preference 允许一个已标识的脚本获取并设置特定的 Navigator 参数。
taintEnabled 指定是否允许数据污点。

属性

appCodeName

指定了浏览器代码名称的字符串。
属性源 navigator
只读  
实现版本 Navigator 2.0

示例

下面的例子显示了 appCodeName 属性的值:

document.write("navigator.appCodeName 的值是 " +      navigator.appCodeName) 对于 Navigator 2.0 和 3.0,此语句将显示下列文字:

navigator.appCodeName 的值是 Mozilla

appName

指定了浏览器名称的字符串。
属性源 navigator
只读  
实现版本 Navigator 2.0

示例

下面的例子显示了 appName 属性的值:

document.write("navigator.appName 的值是 " +      navigator.appName) 对于 Navigator 2.0 和 3.0,此语句将显示下列文字:

navigator.appName 的值是 Netscape

appVersion

指定了 Navigator 版本信息的字符串。
属性源 navigator
只读  
实现版本 Navigator 2.0

描述

appVersion 属性将以下列格式指定版本信息:

releaseNumber (platform; country)

此格式中包含下列值:

releaseNumber 是 Navigator 的版本号。例如,“2.0b4

”指定了 Navigator 2.0, beta 4。
  • platform 是 Navigator 运行的平台。例如,“Win16”指定了 16 位版本的 Windows,如 Windows 3.1。
  • country 对于国际版本来说是“I”,对于美国本土版本来说是“U”。本土版本相对于国际版本来说,有更强的加密特性。

示例

示例 1. 下面的例子将显示 Navigator 的版本信息:

document.write("navigator.appVersion 的值是 " +      navigator.appVersion) 对于在 Windows 95 上运行的 Navigator 2.0,将显示下列信息: navigator.appVersion 的值是 2.0 (Win95, I)

对于在 Windows NT 上运行的 Navigator 3.0,将显示下列信息: navigator.appVersion 的值是 3.0 (WinNT, I)

示例 2. 下面的例子将用换行符分隔每一行字符来填充 Textarea 对象。因为换行字符会根据不同的平台而有不同,示例将测试 appVersion 属性决定用户是否正在运行 Windows (appVersion 对于所有版本的 Windows 来说都包含“Win”)。如果用户正在运行 Windows,换行符将设定为 \r\n;否则将设定为 \n,这是针对 Unix 和 Macintosh 来说的。

<SCRIPT>   var newline=null   function populate(textareaObject){      if (navigator.appVersion.lastIndexOf('Win') != -1)         newline="\r\n"         else newline="\n"      textareaObject.value="第一行" + newline + "第二行" + newline      + "line 3"   }   </SCRIPT>   <FORM NAME="form1">   <BR><TEXTAREA NAME="testLines" ROWS=8 COLS=55></TEXTAREA>   <P><INPUT TYPE="button" VALUE="填充 Textarea 对象"      onClick="populate(document.form1.testLines)">   </TEXTAREA>   </FORM>

language

标明了正在使用的 Navigator 的翻译版本。

属性源 navigator
只读  
实现版本 Navigator 4.0

描述

language 的值通常是两个字母的代码,如“en”;某些情况下也可能是五个字符的代码以标明语言子类型,如“zh_CN”。

使用该属性可以决定客户使用的 Navigator 的语言版本,你可能想要为不同语言的用户显示不同的翻译文本。

mimeTypes

一个包含有客户端所有支持的 MIME 类型的数组。

属性源 navigator
只读  
实现版本 Navigator 3.0

mimeTypes 数组包含了客户端支持的每一个 MIME 类型(实际上,这是由帮助应用程序或插件实现的)。例如,如果一个客户端支持三种 MIME 类型,这些 MIME 类型将被反映到 navigator.mimeTypes[0]、navigator.mimeTypes[1],和 navigator.mimeTypes[2] 中。

mimeTypes 数组的每一个元素都是一个 MimeType 对象。

platform

标明了 Navigator 编译的机器类型。

属性源 navigator
只读  
实现版本 Navigator 4.0

描述

Platform 值可能是 Win32、Win16、Mac68k、MacPPC 和各种 Unix。

由于版本差异、模拟器或其它原因,Navigator 根据不同的机器类型编译的版本会有一定的出入。

如果你使用 SmartUpdate 向用户机器上下载软件,就可以使用此特性保证触发器下载的是对应的 JAR 文件。触发页将在检查 platform 属性前检查 Navigator 的版本。要获得关于使用 SmartUpdate 更多的信息,请参看将   JAR 安装管理器用于 SmartUpdate

plugins

包含了客户端目前安装的所有插件的数组。

属性源 navigator
只读  
实现版本 Navigator 3.0

使用本数组可以引用客户端安装的 Plugin 对象。plugins 数组的每个元素都是一个 Plugin 对象。例如,如果在客户端安装了三个插件,这三个插件将被映射为 navigator.plugins[0]、navigator.plugins[1] 和 navigator.plugins[2].

要使用 plugins 数组:

1. navigator.plugins[index] 2. navigator.plugins[index][mimeTypeIndex] index 是一个表明客户端所安装插件顺序的整型数,或者是包含 Plugin 对象名称(可从 name 属性中查到)的字符串。第一种格式将返回存储在 plugins 数组中指定位置的 Plugin 对象。第二种格式将返回该 Plugin 对象中的 MimeType 对象。

要获得客户端已安装的插件数目,可以使用 length 属性:navigator.plugins.length。

 plugins.refresh: plugins 数组有其自己的方法,refresh。此方法将使得最新安装的插件可用,更新相关数组,如 plugins 数组,并可选重新装入包含插件的已打开文档。你可以使用下列语句调用该方法:

navigator.plugins.refresh(true) navigator.plugins.refresh(false) 如果你给定 true 的话,refresh 将在使得新安装的插件可用的同时,重新装入所有包含有嵌入对象(EMBED 标签)的文档。如果你给定 false 的话,该方法则只会刷新 plugins 数组,而不会重新载入任何文档。

当用户安装插件后,该插件将不会可用,除非调用了 refresh,或者用户关闭并重新启动了 Navigator。

示例

下面的代码将刷新数组并重新装入包含有嵌入对象的文档:

navigator.plugins.refresh(true) 同时可参看 Plugin 对象的示例。

userAgent

该字符串表明从客户端向服务器发送的 HTTP 协议用户代理头的值。

属性源 navigator
只读  
实现版本 Navigator 2.0

描述

服务器使用在用户代理头中发送的值来鉴别客户。

示例

下面的例子将显示 Navigator 中的 userAgent 信息:

document.write("navigator.userAgent 的值是 " +      navigator.userAgent) 对于 Navigator 2.0,将显示下列内容:

navigator.userAgent 的值是 Mozilla/2.0 (Win16; I)

方法

javaEnabled

测试是否允许 Java。

方法源 navigator
静态  
实现版本 Navigator 3.0

语法

javaEnabled()

参数

无。

描述

如果允许 Java 的话,javaEnabled 将返回 true;否则将返回 false。用户可以通过用户首选项的参数设置启用或禁用 Java。

示例

下面的代码将在允许 Java 的情况下执行 function1;否则执行 function2。

if (navigator.javaEnabled()) {      function1()   }   else function2()

参看

navigator.appCodeName, navigator.appName, navigator.userAgent

preference

允许标识的脚本获取并设置某些 Navigator 的首选项。

方法源 navigator
静态  
实现版本 Navigator 4.0

语法

preference(prefName) preference(prefName, setValue)

参数

prefName 表明了你想要获取或设置的首选项的名称。可以选用下面列出的首选项。
setValue 你想要为首选项指定的值。可以是字符串、数值或布尔值。

描述

本方法将返回首选项的值。如果你使用本方法设置值,则将返回新值。

安全性

使用 preference 方法读取首选项需要有 UniversalPreferencesRead 权限。用此方法设置首选项需要有 UniversalPreferencesWrite 权限。

要获得关于 Navigator 4.0 中的安全性的更详细信息,请看“JavaScript 指南”中的第七章“JavaScript 安全性”

在得到许可的情况下,你可以获取和设置在表 8.2 中列出的首选项。

表 8.2 参数选择

要做下列事... 设置此参数... 为...
允许或禁止自动装入图像 general.always_load_images true 或 false
允许或禁止 Java security.enable_java true 或 false
允许或禁止 JavaScript javascript.enabled true 或 false
允许或禁止样式表 browser.enable_style_sheets true 或 false
允许或禁止 SmartUpdate autoupdate.enabled true 或 false
接受所有 cookie network.cookie.cookieBehavior 0
只接受发送回原始服务器的 cookie network.cookie.cookieBehavior 1
禁止 cookie network.cookie.cookieBehavior 2
接受 cookie 前警告 network.cookie.warnAboutCookies true 或 false

taintEnabled

指定是否允许数据污点。

方法源 navigator
静态  
实现版本 Navigator 3.0; 在 Navigator 4.0中已删除 

语法

navigator.taintEnabled()

描述

污点将避免其它脚本传递绝密和私有的信息,例如目录结构或用户浏览历史。JavaScript 不能在没有最终用户许可的情况下向任何服务器发送带有污点的值。

可以使用 taintEnabled 决定是否允许数据污点。如果允许数据污点的话,taintEnabled 将返回 true,否则返回 false。用户可以环境变量 NS_ENABLE_TAINT 启用或禁用数据污点。

示例

下面的代码将在允许数据污点的情况下执行 function1;否则执行 function2。

if (navigator.taintEnabled()) {      function1()      }   else function2()

javascript的navigator对象的更多相关文章

  1. JavaScript 之 navigator 对象

    navigator 对象可以查看用户所使用的浏览器类型和系统平台类型. 1.userAgent  通过 userAgent 可以判断用户浏览器的类型. Chrome 浏览器效果: 2.platform ...

  2. JavaScript基础--DOM对象(十三):(windows对象:history\location\navigator\screen\event)

    DOM编程1.为什么要学习DOM(1) 通过dom编程,我们可以写出各种网页游戏(2)dom编程也是ajax的重要基础2.DOM编程介绍DOM = Document Object Model(文档对象 ...

  3. JavaScript navigator 对象(转)

    navigator -- navigator对象通常用于检测浏览器与操作系统的版本 navigator,中文"导航器" 引用网址:http://www.dreamdu.com/ja ...

  4. JavaScript -- 时光流逝(九):Window 对象、Navigator 对象

    JavaScript -- 知识点回顾篇(九):Window 对象.Navigator 对象 1. Window 对象 1.1 Window 对象的属性 (1) closed: 返回窗口是否已被关闭. ...

  5. javascript Navigator对象属性和方法

    Navigator对象 Navigator 对象包含的属性描述了正在使用的浏览器.可以使用这些属性进行平台专用的配置.虽然这个对象的名称显而易见 的是 Netscape 的 Navigator 的浏览 ...

  6. JavaScript BOM-11-BOM的核心-window对象; window对象的控制,弹出窗口方法; 超时调用; 间歇调用; location对象常用属性; 位置操作--location.reaplace,location.reload(); BOM中的history对象; Screen对象及其常用属性; Navigator对象;

    JavaScript BOM 学习目标 1.掌握什么是BOM 2.掌握BOM的核心-window对象 3.掌握window对象的控制.弹出窗口方法 什么是bom BOM(browser object ...

  7. JavaScript浏览器检测之navigator 对象

    一.使用客户端检测的原因 由于每个浏览器都具有自己独到的扩展,所以在开发阶段来判断浏览器是一个非常重要的步骤. 虽然浏览器开发商在公共接口方面投入了很多精力,努力的去支持最常用的公共功能: 但在现实中 ...

  8. 谈谈JavaScript Navigator 对象属性

    Navigator 对象属性 可以在Navigator对象上使用以下属性: 属性 描述 appCodeName 返回浏览器的代码名称 appName 返回浏览器的名称 appVersion 返回浏览器 ...

  9. JavaScript location对象、Navigator对象、Screen对象简介

    Location对象 location用于获取或设置窗体的URL,并且可以用于解析URL. 语法: location.[属性|方法] Location对象属性 Location对象方法: Naviga ...

随机推荐

  1. 《简明python教程》学习笔记,长文

    引号: 单引号:如果包含的字符串里有单引号的话,需要在那个单引号里加转义符号,或者使用双引号 例:print 'he"llo' or print 'he\'llo'    ===> h ...

  2. Open vSwitch源码阅读【转】及自己的理解【稍后更新】

    http://blog.chinaunix.net/uid-24485075-id-2240075.html

  3. 基于ffmpeg网络播放器的教程与总结

    基于ffmpeg网络播放器的教程与总结   一.         概述 为了解决在线无广告播放youku网上的视频.(youku把每个视频切换成若干个小视频). 视频资源解析可以从www.flvcd. ...

  4. jquery validate 自定义验证方法 日期验证

    jquery validate有很多验证规则,但是更多的时候,需要根据特定的情况进行自定义验证规则. 这里就来聊一聊jquery validate的自定义验证. jquery validate有一个方 ...

  5. -_-#【事件】keyCode

  6. uglifyjs压缩js文件(指令压缩/ 批量压缩/ 编程方式压缩)

    一.指令压缩 1.安装node,npm——详细见nodejs安装与使用入门 2.安装 uglifyjs——npm install -g uglify-js 3.压缩例子:1)uglifyjs  mai ...

  7. mergeIDE

    Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CriticalDe ...

  8. B - Networking - poj 1287

    有一些地方需要铺盖电缆,这些地方两点间的路可能不止一条,需要求出来至少需要多少电缆才能让所有的点都连接起来,当然,间接连接也算. /////////////////////////////////// ...

  9. error in invoking target 'mkldflags ntcontab.o nnfgt.o' of makefile

    error in invoking target 'mkldflags ntcontab.o nnfgt.o' of makefile 今天是2013-08-04,在安装oracle11g r2 数据 ...

  10. [Javascript ] Array methods in depth - sort

    Sort can automatically arrange items in an array. In this lesson we look at the basics including how ...