我有一个应该与Outlook 2013集成的Web应用程序,并且希望也可以与Outlook 2010集成。
在Outlook中,您可以拥有一个带有“默认网站”的文件夹,该文件夹可用于我们客户的所有乐趣。
但不是我们的应用程序,因为 - 仅在Outlook中 - 在Ext代码中引发了一个错误,
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运行时错误:无法获取未定义或空引用的属性'ext-quicktips-tip-frame1MC'
在IE11,IE10,IE9,IE8,FF24,FF37,Chrome 37中,一切都运行良好,因为我使用<meta http-equiv="X-UA-Compatible" content="IE=Edge">
。但这对Outlook没有帮助,它告诉我它是
Mozilla / 4.0(兼容; 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 - 并相应地设置用户代理吗?
Outlook是使用IE7(或IE7渲染模式),还是只是提交了一个错误的用户代理,并且ExtJS错误地认为每个通过Ext.isIE9m测试的浏览器都有特定的功能? / p>
答案 0 :(得分:0)
InternetExplorer具有正确设置的javascript对象 RewriteEngine On
RewriteBase /
,但ExtJS未对其进行正确评估。
如果Ext-more.js包含以下内容,那么它可以工作:
document.documentMode
而不是
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),