欧美日韩国产一区二区|qovd片|小明个人发布看看|小浪货你夹真紧水又多|老头把我添高潮了A片故|99热久久精品国产一区二区|久久久春色AV

JavaScript中一個(gè)奇葩的IE瀏覽器判斷方法

記得在網(wǎng)上Down的很多源碼用的最多的一種方式就是:
復(fù)制代碼 代碼如下:var ie = document.all();
這是因?yàn)镮E瀏覽器的document下有all方法,而所謂的標(biāo)準(zhǔn)瀏覽器卻沒有,所以很長的一段時(shí)間,這個(gè)是一種非常普遍的方法 。
在之后大家開始追求起簡(jiǎn)短,就像在這之后一度流行的一種方法:
復(fù)制代碼 代碼如下:var ie = !"1";
這個(gè)是利用IE不支持垂直制表符的特性而判別的,僅僅7個(gè)字符已經(jīng)很讓人震驚了,可是這個(gè)記錄被一個(gè)俄國人在今年早些的時(shí)候打破了,人家只需要6個(gè)字符就可以搞定了 。
我們暫且不討論這一個(gè)字符能夠做什么 , 但把它看作是一種研究,或者你說他是閑的那啥痛也行(吐槽~) 。
復(fù)制代碼 代碼如下:var ie = ! - [1,];
其實(shí)它的原理很簡(jiǎn)單,[1,]在標(biāo)準(zhǔn)瀏覽器會(huì)返回字符串"1",相當(dāng)于調(diào)用[1,].toString , IE則返回"1," 。但是這樣IE與標(biāo)準(zhǔn)都會(huì)通過檢測(cè),因此使用負(fù)號(hào)強(qiáng)制轉(zhuǎn)換為數(shù)字,標(biāo)準(zhǔn)能成功轉(zhuǎn)換為1,1會(huì)在if中自動(dòng)轉(zhuǎn)換為true,而IE則轉(zhuǎn)換為NaN,再自動(dòng)轉(zhuǎn)換為false!查看DEMO 。
很簡(jiǎn)單對(duì)吧?肯定會(huì)有很多人跟我一樣在想,我怎么就沒想到呢?是?。以趺淳兔幌氳僥兀浚ㄐ)您可能感興趣的文章:用js判斷用戶瀏覽器是否是XP SP2的IE6用js判斷瀏覽器是否是IE的比較好的辦法js 全世界最短的IE瀏覽器判斷代碼js ie非ie瀏覽器的幾種判斷方法小結(jié)javascript判斷ie瀏覽器6/7版本加載不同樣式表的實(shí)現(xiàn)代碼利用js判斷瀏覽器類型(是否為IE,Firefox,Opera瀏覽器)js判斷IE瀏覽器版本過低示例代碼ExtJS判斷IE瀏覽器類型的方法js代碼判斷瀏覽器種類IE、FF、Opera、Safari、chrome及版本js判斷當(dāng)前瀏覽器類型,判斷IE瀏覽器方法js判斷瀏覽器類型為ie6時(shí)不執(zhí)行原生js仿jq判斷當(dāng)前瀏覽器是否為ie,精確到ie6~8IE及IE6瀏覽器中判斷JS文件加載成功失敗的方法JS如何判斷是否為ie瀏覽器的方法(包括IE10、IE11在內(nèi))

相關(guān)經(jīng)驗(yàn)推薦