我有一个MVC应用程序,当我将Intranet站点(下图中的http://192.168.72.196)添加到Internet选项中的本地Intranet站点时,我得到了jQuery错误。当我删除该网站时,它的工作原理。这只发生在IE中。
无论如何要解决?
我更改了文档设置,但它似乎有效,但我不确定它的作用或默认为7的原因。
从7更改为Edge
答案 0 :(得分:1)
看起来你陷入了2个问题的影响。首先你的页面包含一些告诉IE使用IE7模式的信息,一个可能的可能就是包含这样的元数据:
<meta http-equiv="X-UA-Compatible" content="IE=7">
另一种(更难追查)可能性是您的网络服务器(ASP.net,PHP等)正在发送X-UA-Compatible
标头,其值为IE=7
,here is more information about this。< / p>
另一个问题是JQuery 2.0放弃了对IE 6,7和8的支持,你可以在他们的下载页面上看到:
jQuery 2.x与jQuery 1.x具有相同的API,但不支持Internet Explorer 6,7或8。
您可以选择使用值IE=Edge
更新元标记或标头,或者出于其他原因需要IE7支持,以使用JQuery 1.x。
答案 1 :(得分:1)
互联网设置中有一个复选框,之前已经咬过我,听起来这是你的问题。按Alt,转到工具 - &gt;兼容性视图设置。有一个复选框,在兼容性视图中显示&#34;显示Intranet站点。&#34;我的猜测是罪魁祸首,特别是因为问题只发生在内网区域。另请注意,此复选框不能被覆盖。放置meta
标记甚至标题都不会覆盖此复选框。如果您放置一个HTTP标头,它将覆盖&#34;文档模式&#34;但不是&#34;浏览器模式。&#34; meta
标记无效。
答案 2 :(得分:0)
您的浏览器不支持addEventListener。使用polyfill可提高浏览器兼容性。例如this gist。
polyfill或polyfiller是一段代码(或插件),它提供了开发人员期望浏览器本机提供的技术。如果愿意,可以展平API格局。