2014-09-29 45 views
1

我有一個Web應用程序,應該與Outlook 2013集成,並希望也與Outlook 2010.在Outlook中打開ExtJS應用程序 - Outlook模仿IE7?

在Outlook中,您可以有一個「默認網站」的文件夾,它用於所有類型的樂趣我們的顧客。

但不能與我們的應用程序,因爲 - 只有在Outlook中 - 錯誤是深藏在內線的代碼在最後一行拋出,在

if (Ext.isIE9m) { 
    Element.prototype.getById = function (id, asDom) { 
     var dom = this.dom, 
      cacheItem, el, ret; 

     if (dom) { 
      // for normal elements getElementById is the best solution, but if the el is 
      // not part of the document.body, we need to use all[] 
      el = (useDocForId && DOC.getElementById(id)) || dom.all[id]; 

,它說

0x800a138f - JavaScript runtime error: Unable to get property 'ext-quicktips-tip-frame1MC' of undefined or null reference

一切運作良好在IE11中,IE10,IE9,IE8,FF24,FF37,Chrome 37,因爲我用的是<meta http-equiv="X-UA-Compatible" content="IE=Edge">。但是,這並不與Outlook幫助,告訴我,這是

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64, Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; Microsoft Outlook 15.0.4615)

我可以告訴Outlook以使用安裝最新的IE - 並相應地設置用戶代理?

是使用IE7(或IE7渲染模式)的Outlook,還是僅僅提交了一個明顯錯誤的用戶代理,而ExtJS卻錯誤地認爲通過Ext.isIE9m測試的每個瀏覽器都具有可用的特定功能?

+0

我面對同樣的錯誤。你有沒有解決這個問題? – Vipin 2015-06-16 11:27:47

回答

0

InternetExplorer的javascript對象document.documentMode設置正確,但ExtJS不正確評估它。

所以它的工作原理,如果EXT-more.js包含以下內容:

isIE7 = isIE && ((check(/msie 7/) && docMode != 8 && docMode != 9 && docMode != 10 && docMode != 11) || docMode == 7), 
isIE8 = isIE && ((check(/msie 8/) && docMode != 7 && docMode != 9 && docMode != 10 && docMode != 11) || docMode == 8), 
isIE9 = isIE && ((check(/msie 9/) && docMode != 7 && docMode != 8 && docMode != 10 && docMode != 11) || docMode == 9), 
isIE10 = isIE && ((check(/msie 10/) && docMode != 7 && docMode != 8 && docMode != 9 && docMode != 11) || docMode == 10), 
isIE11 = isIE && ((check(/trident\/7\.0/) && docMode != 7 && docMode != 8 && docMode != 9 && docMode != 10) || docMode == 11), 

代替

isIE7 = isIE && ((check(/msie 7/) && docMode != 8 && docMode != 9 && docMode != 10) || docMode == 7), 
isIE8 = isIE && ((check(/msie 8/) && docMode != 7 && docMode != 9 && docMode != 10) || docMode == 8), 
isIE9 = isIE && ((check(/msie 9/) && docMode != 7 && docMode != 8 && docMode != 10) || docMode == 9), 
isIE10 = isIE && ((check(/msie 10/) && docMode != 7 && docMode != 8 && docMode != 9) || docMode == 10), 
isIE11 = isIE && ((check(/trident\/7\.0/) && docMode != 7 && docMode != 8 && docMode != 9 && docMode != 10) || docMode == 11),