`
奥义之舞
  • 浏览: 284418 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

通过navigator 对象判断浏览器、浏览器版本

 
阅读更多
navigator
包含了正在使用的 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 指定了浏览器名称的字符串。
属性源 navigator
只读
实现版本 Navigator 2.0
下面的例子显示了 appName 属性的值:
document.write("navigator.appName 的值是 " +
    navigator.appName)
对于 Navigator 2.0 和 3.0,此语句将显示下列文字:
navigator.appName 的值是 Netscape 指定了 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> 标明了正在使用的 Navigator 的翻译版本。
属性源 navigator
只读
实现版本 Navigator 4.0
language 的值通常是两个字母的代码,如“en”;某些情况下也可能是五个字符的代码以标明语言子类型,如“zh_CN”。
使用该属性可以决定客户使用的 Navigator 的语言版本,你可能想要为不同语言的用户显示不同的翻译文本。
一个包含有客户端所有支持的 MIME 类型的数组。
属性源 navigator
只读
实现版本 Navigator 3.0
mimeTypes 数组包含了客户端支持的每一个 MIME 类型(实际上,这是由帮助应用程序或插件实现的)。例如,如果一个客户端支持三种 MIME 类型,这些 MIME 类型将被反映到 navigator.mimeTypes[0]、navigator.mimeTypes[1],和 navigator.mimeTypes[2] 中。
mimeTypes 数组的每一个元素都是一个 MimeType 对象。
MimeType
标明了 Navigator 编译的机器类型。
属性源 navigator
只读
实现版本 Navigator 4.0
Platform 值可能是 Win32、Win16、Mac68k、MacPPC 和各种 Unix。
由于版本差异、模拟器或其它原因,Navigator 根据不同的机器类型编译的版本会有一定的出入。
如果你使用 SmartUpdate 向用户机器上下载软件,就可以使用此特性保证触发器下载的是对应的 JAR 文件。触发页将在检查 platform 属性前检查 Navigator 的版本。要获得关于使用 SmartUpdate 更多的信息,请参看将 JAR 安装管理器用于 SmartUpdate。
包含了客户端目前安装的所有插件的数组。
属性源 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 对象的示例。
该字符串表明从客户端向服务器发送的 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
允许标识的脚本获取并设置某些 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
指定是否允许数据污点。
方法源 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()
示例
语法
taintEnabled
安全性
描述
语法
preference
参看
示例
描述
语法
方法
示例
描述
userAgent
示例
plugins
描述
platform
参看
mimeTypes
描述
language
描述
appVersion
示例
appName
示例
属性
方法概览
属性概览
创建源

转自:http://hi.baidu.com/liuwyong11/blog/item/3e6870d227163238970a16ea.html
分享到:
评论

相关推荐

    JS判断浏览器之Navigator对象.pdf

    ### JS判断浏览器之Navigator对象 #### 一、Navigator对象简介 在JavaScript中,`navigator`对象提供了关于用户浏览器的信息。这个对象包含了多个属性,能够帮助开发者了解用户的浏览器类型及其版本等重要信息。这...

    JavaScript判断浏览器类型及版本

    JavaScript 作为前端开发的主要语言,可以通过编写 JavaScript 程序来判断浏览器的类型和版本。 浏览器类型的判断可以通过两种方式来实现,一种是根据各种浏览器独有的属性来分辨,另一种是通过分析浏览器的 ...

    基于js判断浏览器是否支持webGL.docx

    通过本文,读者可以了解到如何使用JavaScript判断浏览器是否支持WebGL,并且掌握了Detector对象的使用方法。同时,本文还提供了一个解决浏览器不支持WebGL时的错误信息处理方法。 在实际开发中,判断浏览器是否支持...

    navigator-检测浏览器版本-javascript

    ### 使用navigator对象检测浏览器版本及特性 在网页开发过程中,有时候我们需要根据用户的浏览器类型或版本来调整页面的行为或样式。JavaScript 提供了 `navigator` 对象来帮助开发者获取客户端浏览器的相关信息,...

    JS判断浏览器类型与版本

    这可以通过检查navigator对象的各种属性来实现。navigator对象是浏览器提供的一个全局对象,包含了有关浏览器的信息。 1. **navigator.userAgent** `navigator.userAgent` 是一个字符串,它包含了关于用户代理(即...

    非常详细的JS判断浏览器的版本和型号

    - **`navigator.appVersion`**: 返回浏览器版本号以及其他相关信息。 - 包含了操作系统、浏览器引擎等信息。 ##### 2. `navigator.userAgent` - **`navigator.userAgent`**: 返回一个包含浏览器类型、版本、操作...

    jquery1.9判断浏览器类型和版本

    总的来说,虽然jQuery 1.9移除了`$.browser`,但通过JavaScript的`navigator`对象,我们仍然可以有效地判断浏览器类型和版本。使用这种方法时,要注意保持代码的可维护性和兼容性,避免过于依赖特定浏览器的行为。...

    判断浏览器版本的js代码

    为了从`navigator.userAgent`中提取出具体的浏览器版本号,通常会使用正则表达式进行匹配。比如,对于Internet Explorer(IE),正则表达式`/msie([\d.]+)/`用于匹配“MSIE”后面紧跟的数字和小数点组成的版本号。...

    判断浏览器版本Js,浏览器兼容

    总之,通过JavaScript的`navigator`对象,我们可以轻松地获取浏览器信息,实现浏览器版本判断。结合各种兼容性处理策略,可以确保我们的Web应用在不同浏览器上都能正常运行。对于开发者而言,理解并掌握这些方法对于...

    js判断浏览器类型,返回浏览器类型名称.

    因此,更推荐使用`navigator`对象的其他属性,比如`navigator.appName`或`navigator.product`,以及现代浏览器提供的`Feature Detection`技术,如`Modernizr`库,来判断浏览器特性而不是仅仅依赖于浏览器名称。...

    判断浏览器的版本等信息

    在这段代码中,首先创建了一个`MzBrowser`对象,然后根据`navigator.userAgent`字符串来判断浏览器的类型。接着,针对每种浏览器使用了不同的正则表达式来提取版本号,并将其存储在`MzBrowser.version`属性中。 ###...

    JS判断打开网页的浏览器类型与版本

    * 浏览器版本号:`navigator.appVersion` * 对 Java 的支持:`navigator.javaEnabled()` * MIME 类型(数组):`navigator.mimeTypes` * 系统平台:`navigator.platform` * 插件(数组):`navigator.plugins` * ...

    判断浏览器类型(判断浏览器类型)

    开发者可以通过分析这个字符串来判断浏览器类型。例如: - `Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Safari/537.36` 这个User-Agent字符串表明...

    JS 判断浏览器版本号

    总之,判断浏览器版本号是JavaScript开发中的常见任务,通过解析User-Agent字符串可以实现这一目标。然而,为了提供最佳的用户体验,开发者应始终关注浏览器的最新特性和最佳实践,不断更新和优化代码,以适应不断...

    得到浏览器尺寸,判断浏览器内核

    其次,判断浏览器内核通常需要检查浏览器提供的`navigator`对象。例如,`navigator.userAgent`属性包含了关于浏览器的详细信息,其中包含了浏览器名称、版本和操作系统等。通过分析这个字符串,可以识别出如Chrome的...

    JS判断浏览器之Navigator对象

    JavaScript中的`Navigator`对象是获取用户浏览器信息的关键接口,它提供了许多属性,允许开发者了解用户正在使用的浏览器类型、版本和其他相关信息。在这个主题中,我们将深入探讨`appName`和`appVersion`这两个重要...

    js判断浏览器的环境(pc端,移动端,还是微信浏览器)

    首先,要判断浏览器环境,我们通常会使用`window.navigator.userAgent`这个属性。`userAgent`属性可以获取到当前浏览器的用户代理字符串,该字符串中包含了浏览器的类型、版本、操作系统的相关信息。通过匹配这个...

Global site tag (gtag.js) - Google Analytics