JavaScript - 浏览器兼容性



了解不同浏览器之间的差异非常重要,以便以预期的方式处理每个浏览器。因此,了解您的网页在哪个浏览器中运行非常重要。

要获取有关网页当前正在运行的浏览器的信息,请使用内置的 navigator 对象。

导航器属性

您可以在 Web 页中使用多个与 Navigator 相关的属性。以下是每个名称的列表和说明。

属性 描述
appCodeName

此属性是一个字符串,其中包含浏览器的代码名称 Netscape for Netscape 和 Microsoft Internet Explorer for Internet Explorer。

appVersion

此属性是一个字符串,其中包含浏览器的版本以及其他有用信息,例如其语言和兼容性。

language

此属性包含浏览器使用的语言的两个字母缩写。仅限 Netscape。

mimTypes[]

此属性是一个数组,其中包含客户端支持的所有 MIME 类型。仅限 Netscape。

platform[]

此属性是一个字符串,其中包含为其编译浏览器的平台。Win32“ 用于 32 位 Windows 操作系统。

plugins[]

此属性是一个数组,其中包含客户端上安装的所有插件。仅限 Netscape。

userAgent[]

此属性是一个字符串,其中包含浏览器的代码名称和版本。此值将发送到原始服务器以标识客户端。

Navigator 方法

有几种特定于 Navigator 的方法。以下是他们的名称和描述列表。

名称 描述
javaEnabled()

此方法确定是否在客户端中启用了 JavaScript。如果启用了 JavaScript,则此方法返回 true;否则,它将返回 false。

plugings.refresh

此方法使新安装的插件可用,并使用所有新插件名称填充 plugins 数组。仅限 Netscape。

preference(name,value)

此方法允许已签名的脚本获取和设置某些 Netscape 首选项。如果省略第二个参数,则此方法将返回指定首选项的值;否则,它将设置 value.仅限 Netscape。

taintEnabled()

如果启用了数据污点,则此方法返回 true;否则为 false。

浏览器检测

有一个简单的 JavaScript 可用于查找浏览器的名称,然后可以相应地向用户提供 HTML 页面。


<html> 		
	 	<head>
	 	 	 <title>浏览器检测示例 - www.qikepu.com</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");
	 	 	 	 	 	 // 请在此处保留您的 Opera 特定URL。
	 	 	 	 	} else if (gecko) {
	 	 	 	 	 	 document.write("Mozilla based browser");
	 	 	 	 	 	 // 请在此处保留您的 Mozilla 特定URL。
	 	 	 	 	} else if (ie) {
	 	 	 	 	 	 document.write("IE based browser");
	 	 	 	 	 	 // 请在此处保留您的IE特定URL。
	 	 	 	 	} else if (netscape) {
	 	 	 	 	 	 document.write("Netscape based browser");
	 	 	 	 	 	 // 请在此处保留您的 Netscape 特定URL。
	 	 	 	 	} else {
	 	 	 	 	 	 document.write("Unknown browser");
	 	 	 	 	}
	 	 	 	 		
	 	 	 	 	// 您可以将版本与上述任何条件一起包含在内。
	 	 	 	 	document.write("<br /> Browser version info : " + version );
	 	 	 </script> 	 	 	
	 	</body>
</html>

输出

执行上述程序时,您将获得类似于以下内容的输出 -

基于 Mozilla 的浏览器
浏览器版本信息 : 5.0 (Windows NT 10.0;Win64 的;x64) AppleWebKit/537.36 (KHTML,如 Gecko) Chrome/128.0.0.0 Safari/537.36 Edg/128.0.0.0

请注意,根据您使用的浏览器类型,您可能会获得有关浏览器的更多信息。