【问题标题】:Object doesn't support property or method 'addEventListener'对象不支持属性或方法“addEventListener”
【发布时间】:2015-03-29 23:36:56
【问题描述】:

尝试为客户修复此错误;

他们有一个 SharePoint 2013 Intranet,其中包含面向内部和外部的 URL。

当他们在内部打开一个表单(使用 IE11)时,它工作正常。但是,如果他们使用外部 url,则会出现严重错误,详细信息为“对象不支持属性或方法 'addEventListener'”

我之前快速搜索过,我找到的唯一的东西是;

a) 使用兼容模式

b) 将以下脚本添加到母版页

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

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

c) 关闭启用保护模式,确保站点位于受信任站点中。选中禁用脚本调试(即)和禁用脚本调试(其他),并取消选中“显示有关每个脚本错误的通知”选项。

我已经尝试了脚本的两次迭代,但都没有解决问题 - UserAgentInfo 未定义,并且 !window.addEventListener 的计算结果为 false。 我也尝试在 c) 中设置所有选项 - 这也不起作用。

兼容模式真的是我唯一的选择吗? 内部站点和外部站点之间可能有什么区别,其中一个会出现这种情况,而另一个则不会?

在此先感谢您的帮助 - 我真的很难过这个。

【问题讨论】:

    标签: sharepoint-2013 internet-explorer-11 infopath


    【解决方案1】:

    UserAgentInfo 是一个函数,需要在使用前定义(由 SharePoint)。如果您检查页面的源代码,您应该会看到如下代码:

    function UserAgentInfo() {} UserAgentInfo.strBrowser = 3;UserAgentInfo.strBrowserType = 3;UserAgentInfo.intBrowserRmj = 11;
    

    您的代码 sn-p 必须放在此之后。尝试将您的代码放在&lt;/body&gt; 标记之前的最后一件事。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-29
      • 1970-01-01
      • 2019-07-05
      • 2015-04-14
      • 2020-09-03
      • 2015-04-09
      相关资源
      最近更新 更多