IE11如何填充window.location.origin?

时间:2015-09-22 16:25:51

标签: javascript internet-explorer internet-explorer-11 intranet chakra

我在 Internet Explorer 11 中的非生产环境中遇到问题

#rightnavigation { position: absolute; top: 50px; right: 0px; width: 25%; } #content { position: absolute; top: 50px; left: 25%; width: 50%; } #leftnavigation{ position: absolute; top: 50px; left: 0px; width: 25%; } .due { color: #ff0000; font-weight: bold; } window.location.origin

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

undefined

此问题仅存在于Internet Explorer中,适用于生产和非生产环境中的Chrome和Firefox,这让我相信IE11中 Chakra JavaScript引擎的填充方式{{ 1}}。

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

Internet Explorer 11 如何以不同的方式计算window.location.origin = http://www.myproductionwebsite.com Chrome或Firefox?

1 个答案:

答案 0 :(得分:7)

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

  

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

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

  

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

     

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

     

固定的代理旁路列表。如果用户在Tools&gt;中指定了固定代理。互联网选项&gt;连接&gt; LAN设置,然后列出绕过该代理的站点将映射到本地Intranet区域。单击“高级”按钮可找到固定代理绕过列表;它位于标有“例外”的框中的屏幕底部。

     

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

Full-sized flowchart detailing how document modes are chosen in IE11

<强>参考