IE11如何填充window.location.origin?

Usa*_*oot 7 javascript internet-explorer intranet chakra internet-explorer-11

我有一个问题的非生产环境的Internet Explorer 11,其中

window.location.originundefined.

但是,在生产环境中,此值实际返回

window.location.origin = http://www.myproductionwebsite.com

此问题仅存在于Internet Explorer中,并且适用于生产和非生产环境中的Chrome和Firefox,这使我相信它是IE11中Chakra JavaScript引擎的填充方式origin.

我还查看了生产和非生产环境中的请求和响应标头,所有参数都是相同的.

Internet Explorer 11如何window.origin.location以不同的方式计算Chrome或Firefox?

Pau*_*tte 7

Intranet站点设置为兼容性视图,禁用window.location.origin:

页面将在兼容性视图中运行,除非它们明确指定其他文档模式.可以使用"工具">"兼容性视图设置"菜单禁用此选项.

站点根据以下标准放置在Intranet区域中:

直接映射.与其他区域一样,用户或网络管理员可以将URL模式列表映射到本地Intranet区域.单击工具> Internet选项>安全性>本地Intranet>站点>高级可查看此列表.

PlainHostName规则(又名"点规则").如果URI的主机名不包含任何句点(例如http:// team /),则它将映射到本地Intranet区域.

固定的代理绕过列表.如果用户在"工具">"Internet选项">"连接">"LAN设置"中指定了固定代理,则列出绕过该代理的站点将映射到"本地Intranet"区域.单击"高级"按钮可找到固定代理绕过列表; 它位于标有Exceptions的框中的屏幕底部.

(WPAD)代理脚本.如果用户的代理配置是"工具> Internet选项>连接>局域网设置"中的"自动检测设置"或"使用自动配置脚本",则浏览器将在指定的WPAD代理配置脚本中运行FindProxyForUrl函数,以确定应使用哪个代理对于每个请求.如果脚本返回"DIRECT",浏览器将绕过代理,站点将映射到本地Intranet区域.将URL映射到区域时,URLMon将调用FindProxyForUrl函数以确定是否应用绕过规则.一个有趣的转折是代理脚本本身可以调用dnsResolve来获取站点的IP地址,并将该信息用作其确定的一部分.

详细说明如何在IE11中选择文档模式的全尺寸流程图

参考