IE10和jQuery:SCRIPT5009:"$"未定义

Bai*_*Dev 19 jquery internet-explorer internet-explorer-10

我遇到了这个非常恼人的问题,它出现在IE10中,就像在IE9中一样.鉴于此HTML:

<head>
    <title>Any Consult</title>
    <meta charset="utf-8" />
    <link rel="stylesheet" type="text/css" href="styles.css" />
    <!--[if lte IE 9]>
        <script src="scripts/IE9.js"></script>
    <![endif]-->
    <script type="text/javascript" src="scripts/jquery.js"></script>
    <script type="text/javascript" src="scripts/scripts.js"></script>
</head>
Run Code Online (Sandbox Code Playgroud)

这个(scripts.js)在FF和Chrome中工作正常,但是IE10会抛出SCRIPT5009错误.

scripts.js就像(简单但经过测试的例子):

$(document).ready(function() {
   alert('Hello');
});
Run Code Online (Sandbox Code Playgroud)

IE10没有加载jQuery-File,我几乎尝试了所有东西.我改变并减少了文件名,我幸免于难

<!--[if lte IE 9]>...
Run Code Online (Sandbox Code Playgroud)

部分,我试过了

src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.10.0.min.js"
Run Code Online (Sandbox Code Playgroud)

但什么都没发生.因为这是这个问题的新版本,我想指出:

  1. 我应该如何为IE(10)命名jQuery-File?
  2. 我应该在哪里将脚本标记放在HTML-Header中?

非常感谢!

编辑:这里建议的HTML版本,也不起作用:

<script type="text/javascript" src="scripts/jquery.js"></script>
<script type="text/javascript" src="scripts/scripts.js"></script>
<script type="text/javascript" src="scripts/clocks.js"></script>
<!--[if lte IE 9]>
    <script src="scripts/IE9.js"></script>
<![endif]-->
<!--[if IE]><script type="text/javascript" src="scripts/excanvas.js"></script><![endif]-->
Run Code Online (Sandbox Code Playgroud)

IE9.js是一个浏览器polyfill文件.

这是我的截图("ist undefiniert"表示"未定义","Die Webseite reagiert nicht"表示"页面已关闭","Debugger wasden"表示"停止调试",$('.aLang')是一个类在我的HTML中.

截图IE10错误报告

小智 9

我有IE的这个问题,发现IE开发人员工具中的jQuery javascript文件已损坏.在我的情况下,这是由服务器完成HTTP GZIP压缩引起的,但是IE没有解压缩文件.我想如果你关闭静态HTTP压缩或从正在进行压缩的任何东西中排除application/x-javascript(我的FluorineFX完成了10Kb以上的所有文件),一旦你清除了浏览器缓存以摆脱它,它应该可以正常工作压缩的javascript文件.