如果IE,运行此脚本,否则,运行此脚本

时间:2015-11-13 17:04:44

标签: javascript internet-explorer browser cross-browser

我试图在IE上加载一个脚本,为每个其他浏览器加载另一个脚本。这是我到目前为止所尝试的内容:

<!--[if IE]>
<script type="text/javascript" src="../JS/Navigation-Toggle-IE.js"></script>
<![endif]-->

<!--[if !IE]> -->
<script type="text/javascript" src="../JS/Navigation-Toggle.js"></script>
<!-- <![endif]-->

此声明只会让我的页面在Safari,Chrome,Firefox和Opera上失真。有没有人有任何见解或资源?

2 个答案:

答案 0 :(得分:1)

不要关闭ie或其他浏览器可以阅读的条件评论。还记得这只适用于ie9及以下。

<!--[if IE]
<script type="text/javascript" src="../JS/Navigation-Toggle-IE.js"></script>
[endif]-->

<!--[if !IE]>
<script type="text/javascript" src="../JS/Navigation-Toggle.js"></script>
<![endif]-->

答案 1 :(得分:0)

我不喜欢JavaScript对象的条件注释,检查浏览器功能通常更可靠。

我的意思是代替制作2个脚本,制作一个并根据检测到的浏览器更改功能。 例如:

var ie = 'ActiveXObject' in window;
var ielt9 = ie && !document.addEventListener; // ie8 and bellow

if (ie) {
 // do ie stuff
} else {
 // do other stuff
}