基于jQuery1.9版本如何判斷瀏覽器版本類型
在jquery.1.9以前的版本,可以使用$.browser很輕松的判斷瀏覽器的類型和版本,但是在1.9中和以后的版本中,$.browser已經(jīng)被刪除,下面就介紹一下如何實(shí)現(xiàn)此功能,希望能夠給需要的朋友帶來幫助。
一.自定義代碼:
$.browser.mozilla = /firefox/.test(navigator.userAgent.toLowerCase()); $.browser.webkit = /webkit/.test(navigator.userAgent.toLowerCase()); $.browser.opera = /opera/.test(navigator.userAgent.toLowerCase()); $.browser.msie = /msie/.test(navigator.userAgent.toLowerCase());
以上代碼中,等號(hào)后面的表達(dá)式返回值是布爾類型的,用來表示是否支持此瀏覽器。這樣就實(shí)現(xiàn)了自定義的$.browser效果。
二.判斷IE6瀏覽器:
jquery1.9之前使用以下代碼:
if ($.browser.msie && 7 > $.browser.version) {}
jquery1.9和之后使用以下代碼:
if ('undefined' == typeof(document.body.style.maxHeight)) {}
三.判斷IE6-IE8瀏覽器:
if (!$.support.leadingWhitespace) {}
綜上所述,基本實(shí)現(xiàn)了我們的要求,這里就不多介紹了。
擴(kuò)展知識(shí)點(diǎn):
jQuery.browser的定義和用法:
瀏覽器內(nèi)核標(biāo)識(shí),依據(jù) navigator.userAgent 判斷。
可用值: safari 、opera 、msie 和mozilla。
瀏覽器對(duì)象檢測(cè)技術(shù)與此屬性共同使用可提供可靠的瀏覽器檢測(cè)支持。
在jQuery 1.9中已經(jīng)刪除。
如果網(wǎng)頁在opera瀏覽器中運(yùn)行,那么jQuery.browser.opera會(huì)返回true,否則返回false。
其他的屬性值以此類推。
實(shí)例代碼:
<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.dbjr.com.cn/" /> <title>腳本之家</title> <script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script> <script type="text/javascript"> $(document).ready(function(){ alert($.browser.msie); }); </script> </head> <body> 如果在IE瀏覽器中運(yùn)行則返回true,否則返回false。 </body> </html>
typeof 運(yùn)算符的用法:
typeof運(yùn)算符放在操作數(shù)之前,可以檢測(cè)此操作數(shù)的數(shù)據(jù)類型,并返回一個(gè)字符串用以說明操作數(shù)的類型。
操作數(shù)可以是變量或者值等。
typeof運(yùn)算符可能返回的值:
一.如果變量未賦值或者變量值賦值為undefined,則返回undefined。
實(shí)例實(shí)例:
var a console.log(typeof(a))
變量a沒有被賦值,這個(gè)時(shí)候變量被默認(rèn)隱式賦值undefined。輸出結(jié)果:undefined。
var a=undefined; console.log(typeof(a))
變量a被賦值undefined。輸出結(jié)果:undefined。
二.如果變量或者值是布爾類型,則返回boolean。
實(shí)例代碼:
console.log(typeof (true))
輸出結(jié)果:boolean。
var a=2,b=1,c=3,d; d=a+b; console.log(typeof(c==d))
輸出結(jié)果:boolean。
三.如果變量或者值是數(shù)值類型,則返回number。
console.log(typeof(1))
輸出結(jié)果:number。
四.如果變量或者值是字符串,則返回string。
console.log(typeof("mayi"))
輸出結(jié)果:string。
console.log(typeof("a"))
ECMAScript中沒有字符類型。所以此段代碼也會(huì)輸出string。
五.變量是引用類型或者null,則會(huì)返回object。
注:null可以認(rèn)為是對(duì)象的占位符,所以返回值也是object。
實(shí)例代碼:
var a=new Date; console.log(typeof(a))
建立一個(gè)時(shí)間對(duì)象實(shí)例a,它是一個(gè)引用類型。輸出結(jié)果: objct。
console.log(typeof(null))
輸出結(jié)果: object。
六.如果變量是函數(shù),則返回function
console.log(typeof(function(){alert("大家好")}))
輸出結(jié)果:function。
var a=function(){alert("大家好")} console.log(typeof(a))
輸出結(jié)果:function。
相關(guān)文章
打造個(gè)性化的功能強(qiáng)大的Jquery虛擬鍵盤(VirtualKeyboard)
本文主要講訴了如何一起一步一步打造個(gè)性化的VirtualKeyboard:功能強(qiáng)大的Jquery虛擬鍵盤,非常的詳細(xì),非常實(shí)用,有需要的朋友可以參考下2014-10-10jQuery實(shí)現(xiàn)簡(jiǎn)單的輪播圖
這篇文章主要為大家詳細(xì)介紹了jQuery實(shí)現(xiàn)輪播圖效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-11-11jQuery實(shí)現(xiàn)的鼠標(biāo)經(jīng)過時(shí)變寬的效果(附demo源碼)
這篇文章主要介紹了jQuery實(shí)現(xiàn)的鼠標(biāo)經(jīng)過時(shí)變寬的效果,實(shí)例演示了jQuery的Kwicks插件實(shí)現(xiàn)針對(duì)鼠標(biāo)事件的響應(yīng)與頁面元素樣式動(dòng)態(tài)變換的相關(guān)技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2016-04-04JQuery+div+css 無限級(jí)聯(lián)樹實(shí)現(xiàn)代碼
JQuery+div+css 無限級(jí)聯(lián)樹實(shí)現(xiàn)代碼,需要的朋友可以參考下。2010-03-03jQuery學(xué)習(xí)筆記(4)--Jquery中獲取table中某列值的具體思路
由于要獲取某列中的一個(gè)ID值,如果用JS傳值的方式此問題就不存在,由于此次用到的都是jquery插件,包括各種彈出框,用JS傳值就得用JS那丑陋的彈出框,所以,你懂得2013-04-04Jquery AJAX POST與GET之間的區(qū)別詳細(xì)介紹
這篇文章主要介紹了Jquery AJAX POST與GET之間的區(qū)別詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下2016-10-10