IE11 JQuery 错误?

IE11 JQuery error?

我的代码在 Firefox 和 Chrome 中运行良好,但在 IE 11 中运行不正常。我收到下一条错误消息:

   1) SCRIPT5009: '$' is undefined
    For this line of code:
    $.extend({ 
      )} 

   2)SCRIPT5009: 'jQuery' is undefined
         // Browser globals
            factory( jQuery );

   3)SCRIPT1010: Expected identifier
        .catch( function( error ) {
            jQuery.readyException( error );
        } );

这是我的 header 标签,包含所有内容:

<head>
    <script type="text/javascript" src="jquery/jquery-3.1.1.js"></script>
    <script type="text/javascript" src="jquery/jquery-ui.js"></script>
    <script type="text/javascript" src="jquery/JQuery_alert.js"></script>
    <link rel="stylesheet" type="text/css" href="jquery/jquery-ui.css">
    <link rel="stylesheet" type="text/css" href="jquery/jquery-ui.structure.css">
    <link rel="stylesheet" type="text/css" href="jquery/jquery-ui.theme.css">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>

我发现,如果我在 IE 中打开我的开发工具,然后在右上角单击文档模式并切换到 Edge,我的代码和上面的所有包含都可以正常工作。所以我的问题是什么是 Edge?我如何才能确保使用 IE 的其他人不会遇到我的页面问题 运行?有办法解决这个问题吗?提前致谢。

兼容性视图

当 Internet Explorer 在兼容性视图中运行时,它会模拟与最新版本 jQuery 不兼容的旧版本,例如 IE8(仅兼容 jQuery 的 1.x 版本使用旧版本的 IE)。

检查兼容性视图是否有问题

当您在 Internet Explorer 中按 F12 键时,应该会调出开发人员工具。在工具栏的右上角附近,您应该找到一个下拉菜单,可以让您在 Edge、10、9、8、7 和 5 之间切换。切换它将导致页面使用新的文档模式刷新。如果您切换到 Edge 并且仍然收到 jQuery 错误,那么您可以排除兼容性视图的问题。

确保页面不会显示在兼容性视图中

在此处查看有关为 Internet Explorer 指定文档模式的文档:https://msdn.microsoft.com/en-US/library/jj676915.aspx

您还可以尝试通过将 <meta> 标记插入 HTML 的页眉(它应该是页眉中的第一个标记)来强制 IE11 在边缘模式下显示,如下所示:

<html>
<head>
    <meta http-equiv="x-ua-compatible" content="IE=edge">
...

这会指示 Internet Explorer 明确使用该文档模式。

如果您的 jquery 引用存储在作为包含引用的 .jspf 文件中,您也会遇到问题。 IBM Websphere 会将 jspf 缓存在服务器上的临时文件夹中,即使 ear/war 部署也不会替换它们。有必要从临时文件夹中删除这些文件。