这篇文章主要介绍了一个奇葩的最短的IE版本判断JS脚本,非常酷的一段代码,需要的朋友可以参考下

使用 conditional comment 来判断 IE 的版本。嗯,是早早有人提出,但没有认真看代码。昨天刚好在看 CSS3 PIE 的时候看到,觉得是不是不靠谱。今天看到 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;

}());

注意一下这个 while 语句。是我觉得最有趣的。对于逗号操作符。我也不熟悉,还只是停留在像变量定义的用法上。比如:


var  a= 'b', c = 'd', e = 'f';

var obj = {
 a: 'b',
 c: 'd',
 e: 'f'
}


问了工友 @kangpangpang,再查了一下书。其实这个比较少见。通常是返回最后一个值。

var a = (1,2,3,5,6,0,9,4); // a === 4

嗯,大概就是这样。挺有趣的。

最新资讯
创世伙伴周炜:iPhone拉平了贫富鸿沟 富人穷人都在用

创世伙伴周炜:iPhone

创世伙伴资本创始主管合伙人周炜表示,iPhone拉平了贫富
韩国反垄断监管机构降低对高通处罚至2亿美元

韩国反垄断监管机构降

2009年,韩国公平贸易委员会认为高通滥用其在CDMA调制解
直击|阿里云发布数十款全新产品 推出小程序繁星计划

直击|阿里云发布数十

2019阿里云峰会今日在北京举行,阿里云智能产品管理部总
软银中国宋安澜回顾过往:没投百度团队 感觉不接地气

软银中国宋安澜回顾过

寻找中国创客第五季启动峰会在北京开幕,在上午压轴环节
创世伙伴资本周炜:过去很多经验 今天都是负担

创世伙伴资本周炜:过去

寻找中国创客第五季启动峰会在北京开幕,在上午压轴环节
最新文章
微信小程序CSS3动画下拉菜单效果

微信小程序CSS3动画下

这篇文章主要为大家详细介绍了微信小程序CSS3动画下拉
微信小程序使用swiper组件实现层叠轮播图

微信小程序使用swiper

这篇文章主要为大家详细介绍了微信小程序使用swiper组
微信小程序实现带缩略图轮播效果

微信小程序实现带缩略

这篇文章主要为大家详细介绍了微信小程序实现带缩略图
小程序实现五星点评效果

小程序实现五星点评效

这篇文章主要为大家详细介绍了小程序实现五星点评效果
微信小程序实现笑脸评分功能

微信小程序实现笑脸评

这篇文章主要为大家详细介绍了微信小程序实现笑脸评分
微信小程序自定义轮播图

微信小程序自定义轮播

这篇文章主要为大家详细介绍了微信小程序自定义轮播图