用javascript判斷IE版本號簡單實用且向后兼容
更新時間:2013年09月11日 08:41:03 作者:
項目中需要判斷IE版本號,又因為 jQuery 2.0 去除了對瀏覽器版本號的判斷于是就看到一老外寫的一段代碼,下面與大家分享下
今天一個項目中需要判斷IE版本號,又因為 jQuery 2.0 去除了對瀏覽器版本號的判斷(它推薦特性檢測),于是就看到一老外寫的一段代碼:
var _IE = (function(){
var v = 3, div = document.createElement('div'), all = div.getElementsByTagName('i');
while (
div.innerHTML = '<!--[if gt IE ' + (++v) + ']><i></i><![endif]-->',
all[0]
);
return v > 4 ? v : false ;
}());
這段代碼著實巧妙!既簡介、有向后兼容!一般做法都是:正則搜索 USER_AGENT ;
但因為歷史原因, USER_AGENT 一直都不準確,而且被各大廠商改的亂七八糟。
比如:
IE10 : Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)
IE11 : Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv 11.0) like Gecko
這都是些什么亂七八糟的什么字符串啊。。。鬼知道 IE12會變成什么?。?!
所以使用特性檢測、或者USER-AGENT檢測既不可靠,也不向后兼容!
強烈推薦上述代碼!
——————————————————————-
以前剛學會編程的時候,感覺自己知道的挺多,有很多東西可以寫;
可真正深入學習很多知識之后,卻痛苦的發(fā)現(xiàn)自己知道的實在是太少了!想寫點什么,卻很難下筆。
復(fù)制代碼 代碼如下:
var _IE = (function(){
var v = 3, div = document.createElement('div'), all = div.getElementsByTagName('i');
while (
div.innerHTML = '<!--[if gt IE ' + (++v) + ']><i></i><![endif]-->',
all[0]
);
return v > 4 ? v : false ;
}());
這段代碼著實巧妙!既簡介、有向后兼容!一般做法都是:正則搜索 USER_AGENT ;
但因為歷史原因, USER_AGENT 一直都不準確,而且被各大廠商改的亂七八糟。
比如:
復(fù)制代碼 代碼如下:
IE10 : Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)
IE11 : Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv 11.0) like Gecko
這都是些什么亂七八糟的什么字符串啊。。。鬼知道 IE12會變成什么?。?!
所以使用特性檢測、或者USER-AGENT檢測既不可靠,也不向后兼容!
強烈推薦上述代碼!
——————————————————————-
以前剛學會編程的時候,感覺自己知道的挺多,有很多東西可以寫;
可真正深入學習很多知識之后,卻痛苦的發(fā)現(xiàn)自己知道的實在是太少了!想寫點什么,卻很難下筆。
相關(guān)文章
javascript中的綁定與解綁函數(shù)應(yīng)用示例
本文為大家詳細介紹下javascript中綁定與解綁函數(shù)在Ie及Mozilla中的應(yīng)用,感興趣的各位可以參考下哈,希望對大家有所幫助2013-06-06
JavaScript排序算法動畫演示效果的實現(xiàn)方法
下面小編就為大家?guī)硪黄狫avaScript排序算法動畫演示效果的實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-10-10
uniapp小程序?qū)崿F(xiàn)瀑布流布局的思路與代碼
這篇文章主要給大家介紹了關(guān)于uniapp小程序?qū)崿F(xiàn)瀑布流布局的思路與代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-04-04

