Document.domain

概述

获取/设置当前文档的原始域部分, 用于 同源策略.

语法

var domainString = document.domain;
document.domain = string;

例子

// 对于文档 www.example.xxx/good.html,
// 以下脚本会关闭窗口
var badDomain = "www.example.xxx";
if (document.domain == badDomain)
   window.close(); // 这只是一个样例 - window.close()有时候会失效
// 对于URI http://developer.mozilla.org/en/docs/DOM
// 以下设置会把变量domain设定为string "developer.mozilla.org"
var domain = document.domain;

详述

如果当前文档的域无法识别,那么domain属性会返回null。

根域范围内,Mozilla允许你把domain属性的值设置为它的上一级域。例如,在 developer.mozilla.org 域内,可以把domain设置为 "mozilla.org" 但不能设置为 "mozilla.com" 或者"org"。

Mozilla 会区分 document.domain 属性 从没有被设定过值 被显示的设定为跟该文档的URL的domain一致的值,尽管这两种状况下,该属性会返回同样的值。两个文档,只有在 document.domain 都被设定为同一个值,表明他们打算协作;或者都没有设定 document.domain 属性并且URL的域是一致的 (如何判断一致),这两种条件下,一个文档才可以去访问另一个文档。如果不是因为这个特殊的策略,每一个站点都会成为他的子域的XSS攻击的对象(例如,https://bugzilla.mozilla.org 可以被来自 https://bug*.bugzilla.mozilla.org 站点的bug附件攻击)。

规范

相关链接

文档标签和贡献者