的JavaScript document.domain的和端口号
问题描述:
先决条件:的JavaScript document.domain的和端口号
浏览器会域为一对(“域”,“端口”),并设置document.domain的它自己的值(或任何其他正确的)导致二传手覆盖端口号与空(OK,WTF!?)
参见:What does document.domain = document.domain do?
问:
是否possib le以保留端口还是允许设置端口的方式调用setter?
答
号
如果你从来没有设置它的document.domain的“特殊”它知道它从来没有被设置,并且还包括端口。
一旦你设置它,它只是一个简单的字符串,没有端口,只会匹配具有相同字符串的其他帧。
永远不会设置document.domain与设置的document.domain不匹配 - 即使两者看起来像是完全一样的东西。它与港口无关。更改后的document.domain将永远不会匹配没有更改的文档,即使它已更改为“自身”。
+0
这就是我所知道的,我只是希望有一些奇怪的怪癖。就像在使用.hta文件的浏览器中没有得到一些跨域限制一样。 – naugtur
没有一个强大的方式AFAIK,因为这是高度依赖于特定的浏览器/版本/实现......请参阅例如Mozilla实施的限制 - https://developer.mozilla.org/en/DOM/document.domain – Yahia