Javascript 什么会使Internet Explorer无法正确处理条件注释?
我正在编写JSP页面并使用Tomcat,除了Firefox和Chrome(客户端需要)之外,它还需要用于IE7 在我的程序中,我包含了两段代码。它适用于非IE浏览器 我的问题是,代码A不能正确地用于IE,因为它将其视为注释,而不是它应该读取的条件注释。知道为什么会发生这种情况以及如何解决吗Javascript 什么会使Internet Explorer无法正确处理条件注释?,javascript,html,internet-explorer,conditional-comments,Javascript,Html,Internet Explorer,Conditional Comments,我正在编写JSP页面并使用Tomcat,除了Firefox和Chrome(客户端需要)之外,它还需要用于IE7 在我的程序中,我包含了两段代码。它适用于非IE浏览器 我的问题是,代码A不能正确地用于IE,因为它将其视为注释,而不是它应该读取的条件注释。知道为什么会发生这种情况以及如何解决吗 <script type="text/javascript"> ... <!-- CODE A --> <!--[if IE]> url = "http:/
<script type="text/javascript">
...
<!-- CODE A -->
<!--[if IE]>
url = "http://" + "..." + "&var=1";
<![endif]-->
<!-- CODE B -->
<!--[if !IE]> -->
url = "http://" + "..." + "&var=1";
<!-- <![endif]-->
...
</script>
...
url=“http://”+“…”+“&;var=1”;
...
条件HTML注释仅适用于HTML。JavaScript不是HTML。而是在JS中使用条件JS注释:
var IE = /*@cc_on!@*/false;
(只有IE才能解释!
,从而有效地使为真
)
然后您可以按如下方式使用它
if (IE) {
url = "http://" + "..." + "&var=1";
} else {
url = "http://" + "..." + "&var=1";
}
但是,在JS中应该首选功能检测。我认为您不能在JavaScript中使用条件注释。您是否尝试过将所有内容包装到单独的
标记中?请编写一次脚本,然后编写它以使其正常工作。浏览器检查是个坏主意™.您的解决方案使其适用于IE,但却破坏了Firefox。Firefox在以下行中断:url=“http://“+”…“+”&var=1”代码>这是另一个问题。您在这些行的某个地方出现了语法错误。阅读错误消息。