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[] 该属性是一个包含代码名称和浏览器版本的字符串。该值被发送到始发服务器以识别客户端。 |
导航方法
有几种导航器特定的方法。这是他们的名字和描述的清单。
Sr.No | 方法 & 描述 |
---|---|
1 |
javaEnabled() 此方法确定是否在客户端中启用JavaScript。如果启用JavaScript,则此方法返回true;否则,它返回false。 |
2 |
plugings.refresh 此方法使新安装的插件可用,并使用所有新插件名称填充插件数组。只有Netscape |
3 |
preference(name,value) 此方法允许签名脚本获取并设置一些Netscape首选项。如果省略第二个参数,则此方法将返回指定首选项的值;否则,它会设置该值。只有Netscape |
4 |
taintEnabled() 如果数据污染已启用,则此方法返回true;否则为假 |
浏览器检测
以下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 based browser"); // Keep your opera specific URL here. } else if (gecko) { document.write("Mozilla based browser"); // Keep your gecko specific URL here. } else if (ie) { document.write("IE based browser"); // Keep your IE specific URL here. } else if (netscape) { document.write("Netscape based browser"); // Keep your Netscape specific URL here. } else { document.write("Unknown browser"); } // You can include version to along with any above condition. document.write("<br /> Browser version info : " + version ); // --> </script> </body> </html>
在成功执行上述代码时,会显示以下输出。
Mozilla based browser Browser version info : 5.0
(Windows NT 6.3; WOW64)AppleWebKit / 537.36(KHTML,如Gecko)Chrome / 41.0.2272.101 Safari / 537.36
'if ... else'构造在执行代码块之前评估条件。以下是语法。if(boolean_expression) { // statement(s) will execute if the Boolean expressi ...