一、使用方法
语法:$.browser.["浏览器关键字"]
$(function() {
if($.browser.msie) {
alert("this is ie");
}
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源码:
var useragent = navigator.useragent.tolowercase();
// figure out what browser is being used
jquery.browser = {
version: (useragent.match( /.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/ ) || [])[1],
safari: /webkit/.test( useragent ),
opera: /opera/.test( useragent ),
msie: /msie/.test( useragent ) && !/opera/.test( useragent ),
mozilla: /mozilla/.test( useragent ) && !/(compatible|webkit)/.test( useragent )
};
jquery使用的是通过正则来匹配useragent判断浏览器的种类和版本.
二、判断浏览器版本
若判断当前浏览器是否是ie6
$.browser.msie && ($.browser.version == "6.0")&&!$.support.style
同样jquery判断浏览器是否为ie7
$.browser.msie&&($.browser.version == "7.0")
如果不考虑向后兼容性,又不想为了判断各浏览器类型而导入jquery
判断ie最简单的方法是
if(document.all){
alert("ie6");
$.browser是通过正则表达式来匹配useragent来判断浏览器版本和种类的.jquery1.3.2版本的文档中已经声明jquery.browser及jquery.browser.version建议弃用,可以使用jquery.support来代替 但是目前的情况来看,jquery.support并不好用,而且是非常的难用,还是老老实实用$.browser来判断浏览器类型吧。
三、ie的条件表达式也可以书写js
<!--[if ie]>
<script type="text/javascript">
alert("ie")
</script>
<![endif]-->
<!--[if ie 6]>
alert("ie6")
<!--[if ie 7]>
alert("ie7")
<![endif]-->
比通过$.browser来判断ie版本更精准,也不用去记jquery的browser的使用方法了。
原帖地址:http://www.poluoluo.com/jzxy/201110/145284.html