繁体   English   中英

IE11 如何填充 window.location.origin?

[英]How does IE11 populate window.location.origin?

我在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.location.origin方式与 Chrome 或 Firefox 有何不同?

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

除非明确指定另一种文档模式,否则页面将在兼容性视图中运行。 可以使用工具 > 兼容性视图设置菜单禁用此选项。

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

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

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

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

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

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

参考

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM