基于jQuery1.9版本如何判斷瀏覽器版本類型
在jquery.1.9以前的版本,可以使用$.browser很輕松的判斷瀏覽器的類型和版本,但是在1.9中和以后的版本中,$.browser已經(jīng)被刪除,下面就介紹一下如何實現(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());
以上代碼中,等號后面的表達式返回值是布爾類型的,用來表示是否支持此瀏覽器。這樣就實現(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) {}
綜上所述,基本實現(xiàn)了我們的要求,這里就不多介紹了。
擴展知識點:
jQuery.browser的定義和用法:
瀏覽器內(nèi)核標(biāo)識,依據(jù) navigator.userAgent 判斷。
可用值: safari 、opera 、msie 和mozilla。
瀏覽器對象檢測技術(shù)與此屬性共同使用可提供可靠的瀏覽器檢測支持。
在jQuery 1.9中已經(jīng)刪除。
如果網(wǎng)頁在opera瀏覽器中運行,那么jQuery.browser.opera會返回true,否則返回false。
其他的屬性值以此類推。
實例代碼:
<!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瀏覽器中運行則返回true,否則返回false。 </body> </html>
typeof 運算符的用法:
typeof運算符放在操作數(shù)之前,可以檢測此操作數(shù)的數(shù)據(jù)類型,并返回一個字符串用以說明操作數(shù)的類型。
操作數(shù)可以是變量或者值等。
typeof運算符可能返回的值:
一.如果變量未賦值或者變量值賦值為undefined,則返回undefined。
實例實例:
var a console.log(typeof(a))
變量a沒有被賦值,這個時候變量被默認(rèn)隱式賦值undefined。輸出結(jié)果:undefined。
var a=undefined; console.log(typeof(a))
變量a被賦值undefined。輸出結(jié)果:undefined。
二.如果變量或者值是布爾類型,則返回boolean。
實例代碼:
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中沒有字符類型。所以此段代碼也會輸出string。
五.變量是引用類型或者null,則會返回object。
注:null可以認(rèn)為是對象的占位符,所以返回值也是object。
實例代碼:
var a=new Date; console.log(typeof(a))
建立一個時間對象實例a,它是一個引用類型。輸出結(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)文章
打造個性化的功能強大的Jquery虛擬鍵盤(VirtualKeyboard)
本文主要講訴了如何一起一步一步打造個性化的VirtualKeyboard:功能強大的Jquery虛擬鍵盤,非常的詳細(xì),非常實用,有需要的朋友可以參考下2014-10-10jQuery實現(xiàn)的鼠標(biāo)經(jīng)過時變寬的效果(附demo源碼)
這篇文章主要介紹了jQuery實現(xiàn)的鼠標(biāo)經(jīng)過時變寬的效果,實例演示了jQuery的Kwicks插件實現(xiàn)針對鼠標(biāo)事件的響應(yīng)與頁面元素樣式動態(tài)變換的相關(guān)技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2016-04-04JQuery+div+css 無限級聯(lián)樹實現(xiàn)代碼
JQuery+div+css 無限級聯(lián)樹實現(xiàn)代碼,需要的朋友可以參考下。2010-03-03jQuery學(xué)習(xí)筆記(4)--Jquery中獲取table中某列值的具體思路
由于要獲取某列中的一個ID值,如果用JS傳值的方式此問題就不存在,由于此次用到的都是jquery插件,包括各種彈出框,用JS傳值就得用JS那丑陋的彈出框,所以,你懂得2013-04-04Jquery AJAX POST與GET之間的區(qū)別詳細(xì)介紹
這篇文章主要介紹了Jquery AJAX POST與GET之間的區(qū)別詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下2016-10-10