31

我收到错误

严重错误:对象不支持此属性或方法 addeventlistener

在 IE 11 浏览器中访问 InfoPath 表单页面(使用启用 InfoPath 的列表表单,例如 displayifs.aspx)。

此错误特定于 IE 11,页面在 IE 10 及更低版本中正确打开。根据这个 MSDN 帖子,IE 11 支持 addEventListener。

有人对此有想法吗?

4

7 回答 7

31

不幸的是,这破坏了其他事情。这是我在另一个似乎对我有用的网站上找到的修复程序:

我会说保留X-UA-Compatibleas"IE=8"并将以下代码添加到母版页的底部:

<script language="javascript">
    /* IE11 Fix for SP2010 */
    if (typeof(UserAgentInfo) != 'undefined' && !window.addEventListener) 
    {
        UserAgentInfo.strBrowser=1; 
    } 
</script>

这修复了错误core.js计算UserAgentInfo.strBrowse=3IE11 的设置并因此支持addEventListener. 我不完全确定除此之外的细节,但保持 IE=8 和使用此脚本的组合对我有用。手指交叉直到我找到下一个 IE11/SharePoint“错误”!

于 2013-12-18T19:41:16.783 回答
23

在修复可用之前(如果有修复)解决此问题的最佳方法是强制用户使用 IE 兼容模式。

最好在母版页中使用<META http-equiv="X-UA-Compatible" content="IE=9">,以便您网站中的所有页面都能获得解决方法。

于 2013-10-30T18:40:50.767 回答
5

当使用 IE 版本 11 访问企业 Intranet 上的React应用程序(使用 jQuery v3.1.1 的 React 版本 16.0.0 的 create-react-app)时,我们也遇到了这个问题。为了解决这个问题,我只是按照下面列出的这个url上的说明进行操作:

  1. 通过确保主文件的第一行是:确保将 DOCTYPE 设置为标准模式:<!DOCTYPE html>

  2. 通过在 head 标记中包含以下元标记来强制 IE 11 使用最新的内部版本: <meta http-equiv="X-UA-Compatible" content="IE=edge;" />

注意:在本地机器(localhost:3000)上使用 IE 以开发模式访问应用程序时,我没有遇到此问题。该问题仅在访问部署到公司 Intranet 上的 DEV 服务器的应用程序时出现,可能是由于某些公司范围的 Windows 操作系统策略设置和/或 IE Internet 选项。

于 2018-03-05T20:07:52.663 回答
2

在母版页使用或全局使用的 JS 文件中添加代码片段。

<script language="javascript">
if (typeof browseris !== 'undefined') {
    browseris.ie = false;
}
</script>

有关更多信息,请参阅博客:http ://blogs2share.blogspot.in/2016/11/object-doesnt-support-property-or.html

于 2016-11-05T09:10:14.927 回答
1

我面临着类似的问题,令人惊讶的是,这次元标记不起作用。原来我目前合作的公司有这种企业模式设置,它优先于元标记。

我们无法更改设置导致政策问题。幸运的是,我真的不需要任何花哨的功能,只需要 jQuery 的基本用法,所以我的最终解决方案是将其版本切换到 1.12 以获得更好的兼容性。

参考:jQuery - 浏览器支持

于 2017-06-27T03:51:14.307 回答
1

为我解决这个问题的是,我在加载 core.js shim 之前渲染了一个 React 组件。

import ReactComponent from '.'
import 'core-js/es6'

在 ReactComponent 之前加载 core-js 解决了我的问题

import 'core-js/es6'
import ReactComponent from '.'
于 2017-01-03T15:40:29.727 回答
0

我们为 IE11 设置了兼容模式来解决问题:设置>兼容性视图设置>添加您的站点名称或如果您的门户位于 Intranet 中,请选中“在兼容性视图中显示 Intranet 站点”。

IE 版本 11.0.9600.16521

为我们工作,希望这对某人有所帮助。

于 2014-04-03T07:22:41.683 回答