一個(gè)奇葩的最短的 IE 版本判斷JS腳本
使用 conditional comment 來判斷 IE 的版本。嗯,是早早有人提出,但沒有認(rèn)真看代碼。昨天剛好在看 CSS3 PIE 的時(shí)候看到,覺得是不是不靠譜。今天看到 Paul Irish 也提起,那么,推薦一下吧。這是作者博客上寫的:
// ----------------------------------------------------------
// A short snippet for detecting versions of IE in JavaScript
// without resorting to user-agent sniffing
// ----------------------------------------------------------
// If you're not in IE (or IE version is less than 5) then:
// ie === undefined
// If you're in IE (>=5) then you can determine which version:
// ie === 7; // IE7
// Thus, to detect IE:
// if (ie) {}
// And to detect the version:
// ie === 6 // IE6
// ie > 7 // IE8, IE9 ...
// ie < 9 // Anything less than IE9
// ----------------------------------------------------------
// UPDATE: Now using Live NodeList idea from @jdalton
var ie = (function(){
var undef,
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 : undef;
}());
注意一下這個(gè) while 語句。是我覺得最有趣的。對于逗號操作符。我也不熟悉,還只是停留在像變量定義的用法上。比如:
var a= 'b', c = 'd', e = 'f';
var obj = {
a: 'b',
c: 'd',
e: 'f'
}
問了工友 @kangpangpang,再查了一下書。其實(shí)這個(gè)比較少見。通常是返回最后一個(gè)值。
var a = (1,2,3,5,6,0,9,4); // a === 4
嗯,大概就是這樣。挺有趣的。
相關(guān)文章
JS獲得鼠標(biāo)位置(兼容多瀏覽器ie,firefox)腳本之家修正版
這段代碼經(jīng)過測試,支持ie和ff是個(gè)不錯(cuò)的代碼,并修正了錯(cuò)誤,希望大家先運(yùn)行測試下2008-11-11canvas+gif.js打造自己的數(shù)字雨頭像的示例代碼
本篇文章主要介紹了canvas+gif.js打造自己的數(shù)字雨頭像的示例代碼,這里整理了詳細(xì)的代碼,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2017-10-10微信小程序開發(fā)實(shí)戰(zhàn)教程之手勢解鎖
這篇文章主要介紹了微信小程序開發(fā)實(shí)戰(zhàn)教程之手勢解鎖的相關(guān)資料,本文分步驟給大家介紹的非常詳細(xì),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-11-11

Javascript Function.prototype.bind詳細(xì)分析

js實(shí)現(xiàn)數(shù)組轉(zhuǎn)樹示例

JS實(shí)現(xiàn)圖片輪播效果實(shí)例詳解【可自動(dòng)和手動(dòng)】

強(qiáng)悍無比的WEB開發(fā)好助手FireBug(Firefox Plugin)