借助 IE 本身提供的 hack

var isIE = function(ver) {
  var b = document.createElement('b');
  b.innerHTML = '<!--[if IE ' + ver + ']><i></i><![endif]-->';
  return b.getElementsByTagName('i').length === 1;
};
if (isIE(6)) {
  // IE 6
  //alert("现在是IE6的浏览器!");
}
// ...
if (isIE(9)) {
  // IE 9
  //alert("现在是IE9的浏览器!");
}

var ie = isIE();

document.write(
  'ie6:' +
    isIE(6) +
    '<br>' +
    'ie7:' +
    isIE(7) +
    '<br>' +
    'ie8:' +
    isIE(8) +
    '<br>' +
    'ie9:' +
    isIE(9) +
    '<br>' +
    'ie10:' +
    isIE(10) +
    '<br>' +
    'ie11:' +
    isIE(11) +
    '<br>' +
    'ie:' +
    isIE()
);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39

如果只想检测是不是 IE,而不关心浏览器版本,那只需要在调用函数的时候,不传递参数即可

TOC