<script language = "javascript">
if (navigator.appName == "Microsoft Internet Explorer") {
begin = navigator.userAgent.indexOf("MSIE ") +
"MSIE ".length;
if(navigator.userAgent.indexOf(";", begin) > 0) {
end = navigator.userAgent.indexOf(";", begin);
} else {
end = navigator.userAgent.indexOf(")", begin)
+ 2;
}
document.getElementById("targetDiv").innerHTML =
"You are using Internet Explorer " +
navigator.userAgent.substring(begin, end);
}
}
</script>
为什么在为IE浏览器制作条件时,添加了else
部分?它的意义和影响是什么?谢谢,
答案 0 :(得分:2)
您不应该使用Javascript来嗅探Internet Explorer。 Welcome to HTML conditional comments:
用于检测IE:
<!--[if IE]>
<!-- Add IE script file here -->
<![endif]-->
用于检测除IE之外的任何内容:
<!--[if !IE]> -->
<!-- Add non-IE script file here -->
<!-- <![endif]-->
Javascript不是浏览器嗅探的好解决方案,因为您只应将其用作“逐步增强”网站的方式。如果您的网站在某人没有启用Javascript时会中断,那么这是不可接受的。构建您的网站并使用Javascript添加创建更好体验所需的效果。
如果您已经拥有检测Internet Explorer的本机方法,则尤其如此。为什么不使用一种适用于所有浏览器的方法,而不是一种可以在仅允许Javascript的浏览器中使用的方法?你永远不会那么肯定。