ES6 - 浏览器
了解不同浏览器之间的差异非常重要,这样才能以预期的方式处理每个浏览器。因此,了解您的网页在哪种浏览器中运行非常重要。要获取有关您的网页当前在哪种浏览器上运行的信息,请使用内置的导航器对象。
导航器属性
您可以在网页中使用多个与导航器相关的属性。以下是名称及其说明的列表。
Sr.No | 属性 &描述 |
---|---|
1 |
appCodeName 此属性是一个字符串,包含浏览器的代码名称,对于 Netscape 为 Netscape,对于 Internet Explorer 为 Microsoft Internet Explorer。 |
2 |
appVersion 此属性是一个字符串,包含浏览器的版本以及其他有用信息,例如其语言和兼容性。 |
3 |
language 此属性包含两个字母的缩写浏览器使用的语言。仅限 Netscape。 |
4 |
mimTypes[] 此属性是一个数组,包含客户端支持的所有 MIME 类型。仅限 Netscape。 |
5 |
platform[] 此属性是一个字符串,包含浏览器编译的平台。 "Win32"适用于 32 位 Windows 操作系统。 |
6 |
plugins[] 此属性是一个数组,包含已安装在客户端上的所有插件。仅限 Netscape。 |
7 |
userAgent[] 此属性是一个字符串,包含浏览器的代码名称和版本。此值将发送到原始服务器以识别客户端。 |
Navigator 方法
有几种特定于 Navigator 的方法。以下是他们的名字和描述的列表。
Sr.No | 方法和说明 |
---|---|
1 |
javaEnabled() 此方法确定客户端中是否启用了 JavaScript。如果启用了 JavaScript,此方法返回 true;否则,返回 false。 |
2 |
plugings.refresh 此方法使新安装的插件可用,并使用所有新插件名称填充插件数组。仅限 Netscape |
3 |
preference(name,value) 此方法允许签名脚本获取和设置一些 Netscape 首选项。如果省略第二个参数,此方法将返回指定首选项的值;否则,它将设置该值。仅限 Netscape |
4 |
taintEnabled() 如果启用了数据污染,此方法返回 true;否则为 false |
浏览器检测
以下 JavaScript 代码可用于找出浏览器的名称,然后据此向用户提供 HTML 页面。
<html> <head> <title>Browser Detection Example</title> </head> <body> <script type = "text/javascript"> <!-- var userAgent = navigator.userAgent; var opera = (userAgent.indexOf('Opera') ! = -1); var ie = (userAgent.indexOf('MSIE') != -1); var gecko = (userAgent.indexOf('Gecko') ! = -1); var netscape = (userAgent.indexOf('Mozilla') ! = -1); var version = navigator.appVersion; if (opera) { document.write("基于 Opera 的浏览器"); // 在此处保留您的 opera 特定 URL。 } else if (gecko) { document.write("基于 Mozilla 的浏览器"); // 在此处保留您的 gecko 特定 URL。 } else if (ie) { document.write("基于 IE 的浏览器"); // 在此处保留您的 IE 特定 URL。 } else if (netscape) { document.write("基于 Netscape 的浏览器"); // 在此处保留您的 Netscape 特定 URL。 } else { document.write("未知浏览器"); } // 您可以将版本与上述任何条件一起包含。 document.write("<br /> 浏览器版本信息:" + version ); // --> </script> </body> </html>
成功执行上述代码后将显示以下输出。
Mozilla based browser Browser version info : 5.0
(Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.101 Safari/537.36