任何版本的 Internet Explorer 上的 iNotes 都在模拟 IE9

iNotes on any version of Internet Explorer is emulating IE9

我正在自定义 iNotes(Notes 网络邮件客户端),使用 javascript 添加一些需要 ajax 调用外部资源的功能。在这样做的过程中,我发现 Internet Explorer 不会执行 CORS(跨源)请求。错误要么是访问被拒绝,要么是其他一些安全错误,具体取决于它的调用方式。 Chrome 并且 FF 和 Safari 都可以。

我发现我认为是罪魁祸首,iNotes 添加了一个元标记来模拟 IE9。

<META http-equiv="X-UA-Compatible" content="IE=EmulateIE9" /> 

对于CORS请求,IE9不支持XMLHttpRequest,必须使用XDomainRequest,只有IE8和IE9支持。由于它模拟 IE9,因此 XMLHttpRequest(或 jQuery .ajax 就此问题调用)不起作用。

我无法找到删除该元标记的任何方法,我对邮件文件进行了搜索,但找不到 IE=EmulateIE9 的匹配项。而且我敢肯定,如果我确实删除了它,我会破坏 iNotes 中的某些内容。

我不想加载 jQuery,但可以为这个脚本加载,并包括 moonscript 插件,该插件使用用于 ie8 和 ie9 浏览器的 XDR。如果 iNotes 有更新,它仍然可以使用。

还有其他人 运行 解决这个问题并找到更好的解决方案吗?

Lothar Mueller 为我指明了正确的方向。

Domino 9.0.1 Fix Pack 5 添加了一个 Forms9s.nsf,它允许您摆脱 "Quirks Mode" 以实现 IE 向后兼容性。安装 FP 后,安装新的 forms9s.nsf 文件,然后将 notes.ini 更新为

iNotes_WA_DefaultFormsFile=iNotes/Forms9s.nsf
iNotes_WA_FormsFiles=iNotes/Forms9s.nsf

它消除了 IE 的仿真标签。我仍然需要测试我的 iNotes 自定义应用程序,但这为 运行 一些以前无法使用的 IE 功能提供了一个选项,例如来自 iNotesExt_9.nsf 的 Ajax 请求等