浏览器的内核及版本的判断


通过jquery 判断浏览器的内核及版本号
<script type="text/javascript"> $(function () { if ($.browser.msie && ($.browser.version == "7.0")) { $("#yourannet").css("margin-left", "10px"); } //IE7浏览器 else if ($.browser.msie && ($.browser.version == "6.0") && !$.support.style) { $("#yourannet").css("margin-left", "15px"); } //IE6浏览器 else if ($.browser.msie && ($.browser.version == "8.0")) { $("#yourannet").css("margin-left", "20px"); } //IE8浏览器 else if ($.browser.msie && ($.browser.version == "9.0")) { $("#yourannet").css("margin-left", "25px"); } // IE9 浏览器 else if (window.navigator.userAgent.toLowerCase().indexOf("360se") >= 1) { $("#yourannet").css("margin-left", "30px"); }//360浏览器 })
  
jQuery 使用的是通过正则来匹配userAgent判断浏览器的种类和版本. 如果我们要来判断当前浏览器是否是IE6应该如何来判断?
$(function() {
  if($.browser.msie) {
  alert("this is msie");
}
else if($.browser.safari)
{
  alert("this is safari!");
}
else if($.browser.mozilla)
{
  alert("this is mozilla!");
}
else if($.browser.opera) {
  alert("this is opera");
}
else {
  alert("i don't konw!");
}

以下是jquery的正则表达式:支持区分ie、firefox、opera、chrome、safari
// browser check-----start
	var userAgent = navigator.userAgent, // userAgent
	rMsie = /.*(msie) ([\w.]+).*/, // ie
	rFirefox = /.*(firefox)\/([\w.]+).*/, // firefox
	rOpera = /(opera).+version\/([\w.]+)/, // opera
	rChrome = /.*(chrome)\/([\w.]+).*/, // chrome
	rSafari = /.*version\/([\w.]+).*(safari).*/;// safari
	jMeteor.browser = {};
	var ua = userAgent.toLowerCase();
	function uaMatch(ua) {
		var match = rMsie.exec(ua);
		if (match != null) {
			return { browser : match[1] ¦¦ "", version : match[2] ¦¦ "0" };
		}
		var match = rFirefox.exec(ua);
		if (match != null) {
			return { browser : match[1] ¦¦ "", version : match[2] ¦¦ "0" };
		}
		var match = rOpera.exec(ua);
		if (match != null) {
			return { browser : match[1] ¦¦ "", version : match[2] ¦¦ "0" };
		}
		var match = rChrome.exec(ua);
		if (match != null) {
			return { browser : match[1] ¦¦ "", version : match[2] ¦¦ "0" };
		}
		var match = rSafari.exec(ua);
		if (match != null) {
			return { browser : match[2] ¦¦ "", version : match[1] ¦¦ "0" };
		}
		if (match != null) {
			return { browser : "", version : "0" };
		}
	}
	var browserMatch = uaMatch(userAgent.toLowerCase());
	if (browserMatch.browser) {
		jMeteor.browser[browserMatch.browser] = true;
		jMeteor.browserName = browserMatch.browser;
		jMeteor.browser.version = browserMatch.version;
		jMeteor.browser.language = (navigator.language ? navigator.language
				: navigator.userLanguage ¦¦ "");
	}
	// browser check-----end
    
     
    使用方法:
    Javascript代码
    jMeteor.browser.msie //判断是否为ie,返回true则代表是
    jMeteor.browserName //浏览器名称
    jMeteor.browser.version //浏览器版本
    jMeteor.browser.language //语言
</script>


通过浏览器版本信息判断各浏览器
var _uat=navigator.userAgent; 
if(_uat.indexOf("MSIE 6.0")>0) alert("ie6"); 
else if(_uat.indexOf("MSIE 7.0")>0) alert("ie7"); 
else if(_uat.indexOf("MSIE 8.0")>0) alert("ie8"); 
else if(_uat.indexOf("Firefox")>0) alert("firefox"); 

CSS判断浏览器 
#example{color:red ;} /*firefox*/ 
* html #example{color:blue;} /*ie6*/ 
*+html #example{color:green;} /*ie7*/ 

HTML判断浏览器 
1. <!--[if !IE]><!-->除IE外都可识别<!--<![endif]--> 
2. <!--[if IE]> 所有的IE可识别<![endif]--> 
3. <!--[if IE 6]> 仅IE6可识别<![endif]--> 
4.<!--[if lt IE 6]> IE6以及IE6以下版本可识别<![endif]--> 
5. <!--[if gte IE 6]> IE6以及IE6以上版本可识别<![endif]--> 
6.<!--[if IE 7]> 仅IE7可识别<![endif]--> 
7. <!--[if lt IE 7]> IE7以及IE7以下版本可识别<![endif]--> 
8. <!--[if gte IE 7]> IE7以及IE7以上版本可识别<![endif]--> 
posted @ 2013-03-22 10:50  Nancy_0324  阅读(387)  评论(0编辑  收藏  举报