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 对象。

参看

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()

转载于:https://www.cnblogs.com/worfdream/articles/1857967.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/495724.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

产业|MIR睿工业:2018年机器人市场分析报告

来源&#xff1a;Robot未来智能实验室是人工智能学家与科学院相关机构联合成立的人工智能&#xff0c;互联网和脑科学交叉研究机构。未来智能实验室的主要工作包括&#xff1a;建立AI智能系统智商评测体系&#xff0c;开展世界人工智能智商评测&#xff1b;开展互联网&#xff…

p1和p7签名的区别

前言: P1签名:即裸签名,签名值中只有签名信息. p7签名:即,签名中可以带有其他的附加信息,例如签名证书信息,签名原文信息,时间戳信息等. 所以要注意,不要p7的签名,用p1的方式来验签,这样是不对的.是错误的. 数字签名中,包含了两个过程: 1.对要签名的信息,用指定的hash算法,获取…

用 Python 和 werobot 框架开发公众号

From&#xff1a;用 Python 和 werobot 框架开发公众号&#xff1a;https://www.jianshu.com/p/a517746a900f WeRoBot 官方文档 &#xff1a;https://werobot.readthedocs.io/zh_CN/latest/ Github &#xff1a;https://github.com/offu/WeRoBot Python — WeRobot&#xff0…

专家:智能芯片国际竞争愈发激烈,应尽快制定国家标准

来源&#xff1a; 科技日报摘要&#xff1a;近日&#xff0c;十三届全国政协第一次双周协商座谈会在京召开。会议聚焦的话题是人工智能的发展与对策。夯实基础&#xff0c;提升原始创新能力中科院计算所智能处理器中心主任陈云霁做的就是智能芯片&#xff0c;作为智能芯片公司寒…

easyExcel 使用指南详解

来源&#xff1a;easyExcel 使用指南详解 - 知乎 easyExcel简介 Java领域解析、生成Excel比较有名的框架有Apache poi、jxl等。但他们都存在一个严重的问题就是非常的耗内存。如果你的系统并发量不大的话可能还行&#xff0c;但是一旦并发上来后一定会OOM或者JVM频繁的full g…

(转)Web Services使用多态(XmlInclude) ,支持自定义类型

Web Services使用多态(XmlInclude) 在Web Services方法中&#xff0c;往往使用的都是一个具体类型的参数&#xff0c;这个参数一般就是一个数据对象。ASP.NET Web Services通过声明XmlIncludeAttribute可以实现Web Services方法中运用多态。 XmlIncludeAttribute允许XmlSeriali…

EasyExcel快速上手~读取

对象 // 如果没有特殊说明&#xff0c;下面的案例将默认使用这个实体类 public class DemoData {private String string;private Date date;private Double doubleData;// getting setting }监听器 // 如果没有特殊说明&#xff0c;下面的案例将默认使用这个监听器 public cl…

激光破解太空通信难题

来源&#xff1a;新浪科技摘要&#xff1a;虽然目前而言无线电天线仍然是太空通信的支柱&#xff0c;但目前未来发展方向是激光通讯系统。在太空中&#xff0c;没有人会听到你的尖叫——因为声音不会在真空中传播&#xff0c;而且你需要某种类型的无线电波中继携载这些信息&…

Docker 原理、学习教程

Docker 官网 &#xff1a;https://www.docker.com/ Docker Hub&#xff1a;https://registry.hub.docker.com/search?qkali Docker 容器超详细讲解&#xff1a;https://www.linuxidc.com/Linux/2018-08/153712.htm Docker Compose&#xff1a;https://www.runoob.com/docker…

System.Runtime.InteropServices.Automation

提供使基于 Silverlight 的应用程序可以与自动化 API 进行交互操作的类。 类&#xff1a; 1.AutomationEvent:  表示一个自动化事件 2.AutomationEventArgs:  为AutomationEvent.EventRaised事件提供数据 3. AutomationFactory :  提供对已注册的自动化服务器的访问转载于…

从自动驾驶到基因编辑,这15项发明专利改变了世界

来源&#xff1a;资本实验室近期&#xff0c;中兴通讯受美国制裁的事件戳中了国人心中的“痛”&#xff0c;也对我们长期受制于人的芯片核心技术与产业敲响了警钟。我们近乎被动地发现&#xff0c;在科技创新&#xff0c;尤其是技术驱动型创新方面&#xff0c;我们的差距到底有…

org.dom4j.DocumentFactory cannot be cast to org.dom4j.DocumentFactory

引入cryptofront-2.1.6.jar后dom4j执行异常 解决方案&#xff0c;强制在cryptofront-2.1.6.jar加载前&#xff0c;加载dom4j dom4j引入不完整

【原】StreamInsight 浅入浅出(四)—— 例子

对于StreamInsight这种不是很线性的架构&#xff0c;最好还是直接拿出来一个例子&#xff0c;简单但完整的把流程走过一遍&#xff0c;更能看清所谓“流”、“事件”、“适配器”之类到底是什么东西&#xff0c;有什么关系。 官方例子下载地址&#xff1a;http://go.microsoft.…

Cheat Engine 教程( 1 - 9 通关 )

工具包&#xff1a;https://down.52pojie.cn/Tools/Debuggers/ Cheat Engine 官网&#xff1a;https://www.cheatengine.org/ ce 修改器绿色版(cheat engine) v7.4 官方最新版&#xff1a;http://www.downcc.com/soft/21673.html 这个教程全部是来自 Cheat Engine 软件的中的…

人工智能元老痛批IBM:沃森是个骗局,这根本不是认知

作者 Roger Schank李林 编译整理量子位 出品 | 公众号 QbitAI一篇质疑IBM的旧文今天在HackerNews上火了起来&#xff0c;虽已时隔两年&#xff0c;这篇文章还是引起了网友们的强烈共鸣。文章作者Roger Schank是AI领域元老人物&#xff0c;AAAI Fellow&#xff0c;曾任耶鲁大学人…

判断字符串中是否包含中文

判断字符串中是否包含中文 selectcasewheny我like%[啊-座]%then包含中文 else不包含中文 end转载于:https://www.cnblogs.com/stublue/archive/2010/11/05/1869916.html

OllyDBG完美教程(超强入门级)

OllyDBG 视频教程&#xff1a;https://www.bilibili.com/video/av6889190 动态调试工具之OllyDbg(OD)教程&#xff1a;https://www.bilibili.com/video/av70600053 使用 OllyDbg 从零开始 Cracking.chm ( 58章 )&#xff1a;https://pan.baidu.com/s/18iXvF5I_No4-a1DK3jKrbg …

12种Bean转换

来源&#xff1a;再见 BeanUtils&#xff01;性能真拉跨&#xff01; 一、前言 二、性能测试对比 三、12种转换案例 1. get\set 2. json2Json 3. Apache copyProperties 4. Spring copyProperties 5. Bean Mapping 6. Bean Mapping ASM 7. BeanCopier 8. Orika 9. Do…

上海人工智能再出重磅!寒武纪科技发布新一代云端AI芯片,联想、曙光、科大讯飞发布相关应用...

来源&#xff1a;文汇网 作者&#xff1a;许琦敏、郭超豪峰值功耗不超过110瓦&#xff0c;等效理论峰值速度可达每秒166.4万亿次定点运算。寒武纪科技在上海发布了中国第一款云端智能芯片——Cambricon MLU100芯片和板卡产品、寒武纪1M终端智能处理器IP产品。联想、曙光和科大…

OD 快捷键使用大全。非常详细( 游戏逆向分析必看 )+ OD 断点 使用大全

From&#xff1a;https://www.cnblogs.com/YiShen/p/9742872.html OllyDBG 快捷键 OllyDbg 窗口通用快捷键 快捷键    功能      Ctrl F2重启程序&#xff0c;即重新启动被调试程序&#xff08; 重新载入程序 &#xff09;。如果当前没有调试的程序&#xff0c;Oll…