2015-03-29 3 views
2

Попытка исправить эту ошибку для клиента;Объект не поддерживает свойство или метод 'addEventListener'

У них есть интранет SharePoint 2013, который имеет как внутренние, так и внешние обратные URL.

Когда они открывают форму (используя IE11), она работает нормально. Однако, если они используют внешний url, он дает критическую ошибку, с подробностями «Объект не поддерживает свойство или метод» addEventListener »

Я сделал быстрый поиск раньше, и единственные вещи, которые я нашел находятся;

а), используя режим совместимости

б) добавление следующий сценарий к MasterPage

<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> 

с) Выключение включить защищенный режим, обеспечивающий сайт находится в доверенные сайты. Проверка отладки отладки сценария (т. Е.) И отключение отладки сценария (другое) и снятие флажка «отображение уведомлений об ошибках каждого сценария».

Я пробовал итерации скрипта и не исправил проблему - UserAgentInfo не определен, и! Window.addEventListener оценивает значение false. Я также попытался установить все варианты в с), - это тоже не сработало.

Совместимый режим действительно мой единственный вариант здесь? Каковы могут быть различия между внутренними и внешними сайтами, где это происходит с одним, но не с другим?

Заранее благодарим за любую помощь - я действительно сильно обеспокоен этим.

ответ

0

UserAgentInfo является функцией и должен быть определен (SharePoint), прежде чем использовать его. Если проверить исходный код страницы, вы должны увидеть код вроде этого:

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

Ваш фрагмент кода должен быть помещен после этого. Попробуйте поместить свой код в качестве последней вещи перед тегом </body>.

Смежные вопросы