javascript - IE7 不读取 CSS 和 JS 包

标签 javascript css internet-explorer-7 minify

我遇到了 IE7 的奇怪行为。

在我的应用程序中,我有许多 JS 和 CSS 文件。由于加载每个页面的请求数量,我决定将它们全部打包到两个文件中,一个包含所有 CSS 文件 (css_pack.css),另一个包含所有 JS 文件 (js_pack.js)。

在 FF、Chrome、IE8 上一切正常。问题是在 IE7 上显示我的应用程序。在 IE7 中,似乎没有读取包(css 和 js)。也就是说,我的应用程序完全没有格式化并且丢失了很多动态 js 行为 (jquery)。

经过大量测试后,我尝试删除 bundle 并分别指向每个文件。现在,一切都在 IE7 中恢复正常,还有我的性能问题...

嗯,这对任何人来说都很熟悉吗?为什么只有 IE7 不喜欢我的包?

更新:

这是我的头部部分:

<head>
<link rel="stylesheet" href="<c:url value="/css/blueprint/screen-nopack.css"/>" type="text/css" media="screen, projection">
<link rel="stylesheet" href="<c:url value="/css/blueprint/print-nopack.css"/>" type="text/css" media="print">
<!--[if lt IE 8]><link rel="stylesheet" href="<c:url value="/css/blueprint/ie-nopack.css"/>" type="text/css" media="screen, projection"><![endif]-->
<link rel="stylesheet" href="<c:url value="/css/css_pack.css"/>" type="text/css" media="screen, projection">
<!--[if lt IE 8]><link rel="stylesheet" href="<c:url value="/css/11-jqtransform.css"/>" type="text/css" media="screen, projection"><![endif]-->

<script type="text/javascript" src="<c:url value="/js/js_pack.js"/>"></script>
<!--[if IE]> <script type="text/javascript" src="<c:url value="/js/excanvas-nopack.js"/>"></script> <![endif]-->
</head>

该行指向的文件...

<!--[if lt IE 8]><link rel="stylesheet" href="<c:url value="/css/11-jqtransform.css"/>" type="text/css" media="screen, projection"><![endif]-->

... 成为 css 包 (css_pack.css) 的一部分。但是,它的内容只有在将不同的行添加到头部时才能被 IE 读取...

更新 2

这是前面JSP处理生成的HTML代码,被IE7接收:

<head>
<link rel="stylesheet" href="/GestorAMPB/css/blueprint/screen-nopack.css" type="text/css" media="screen, projection">
<link rel="stylesheet" href="/GestorAMPB/css/blueprint/print-nopack.css" type="text/css" media="print">
<!--[if lt IE 8]><link rel="stylesheet" href="/GestorAMPB/css/blueprint/ie-nopack.css" type="text/css" media="screen, projection"><![endif]-->
<link rel="stylesheet" href="/GestorAMPB/css/css_pack.css" type="text/css" media="screen, projection">
<!--[if lt IE 8]><link rel="stylesheet" href="/GestorAMPB/css/11-jqtransform.css" type="text/css" media="screen, projection"><![endif]-->
<script type="text/javascript" src="/GestorAMPB/js/js_pack.js"></script>
<!--[if IE]> <script type="text/javascript" src="/GestorAMPB/js/excanvas-nopack.js"></script> <![endif]-->
</head>

最佳答案

你用什么方法打包这些资源?我假设您必须先将它们放在一起,这是您可能会遇到一些问题的地方。

在 js 文件的情况下,确保它们在文件末尾都有一个换行符,最后一行以 ;

如果是css文件,有没有运行js代码的css?当它放在一起时,我看到了这个问题。

最后,你试过ie调试工具看看js/css加载了多少吗?通常会出现一个问题,即部分文件加载而其余部分没有加载,找出中断的位置并查看 catted 文件输出

关于javascript - IE7 不读取 CSS 和 JS 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4922355/

相关文章:

javascript - 如何创建一个出现在点击菜单项上的框?

javascript - 使用 Javascript 计算两个日期之差时获取 NaN

javascript - 当前元素聚焦在 Owl Carousel 中时如何显示标题 div?

jquery - IE7 - 使用 Jquery 时的 Div 对齐问题

javascript - Highchart - 如何更改图表基线的颜色?

javascript 图像平移 'blocking' 导航链接并使 div 元素不透明

css - 全局切换 css 类?

php - IE7 中一个子文件夹的 $_POST 变量为空

css - IE中的边框渲染问题

javascript - 对象最后一个属性的条件逻辑