Перевод не завершен. Пожалуйста, помогите перевести эту статью с английского.

Свойство domain у Document интерфейса получает/устанавливает доменную часть источника происхождения (origin) текущего документа, используется в политике ограничения домена (same origin policy).

Синтаксис

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

Значение

Доменная часть источника происхождения (origin) текущего документа.

Исключения

SecurityError
Была сделана попытка установить domain внутри песочнецы (sandboxed) <iframe>, или связанный документ не имеет контекста просмотра (browsing context), или эффективный домен (effective domain) документа является null, или данное значение не равно эффективному домену документа (или он не является зарегестрированным доменным суффиксом).

Пример

// Для документа с www.example.xxx/good.html,
// этот скрипт закрывает окно
var badDomain = "www.example.xxx";

if (document.domain == badDomain)
   window.close(); // В качестве примера - window.close() иногда не имеет эффекта.
// Для URI http://developer.mozilla.org/en-US/docs/Web 
// доменом будет следующая строка "developer.mozilla.org"
var domain = document.domain;

Замечания

Свойство возвращает null если домен документа не может быть идентифицирован, хотя теперь это изменилось с Firefox 62 - смотри обсуждение в баг 819475.

Mozilla позволит вам установить его в супердомен текущего значения, ограниченный его  базовым доменом. Например, на developer.mozilla.org возможно установить его как "mozilla.org" но не как  "mozilla.com" или "org".

Если это свойство успешно установленно, портовая часть источника так же уставнавливается на нуль.

Mozilla отличает свойство document.domain, которое никогда не было установлено от явно утановленного такого же домена как в URL документа, хотя свойство возвращает одинаковое значение в обоих случаях. Один документ разрешает доступ к другому, если они оба установили document.domain в одинаковое значение, указывая тем самым на их намерение сотрудничать или ни один из них не установил document.domain, а домены в URL-адресах одинаковые (реализация). Если бы не эта специальная политика, то каждый сайт будет подвержен XSS от своих поддоменов (для примера https://bugzilla.mozilla.org может быть атакован с помощью заведения багов (bug attachments) на https://bug*.bugzilla.mozilla.org).

Спецификации

Спецификация Статус Комментарий
HTML Living Standard
Определение 'Document.domain' в этой спецификации.
Живой стандарт  
Unknown
Определение 'Document.domain' в этой спецификации.
Неизвестно  

Совместимость с браузерами

Update compatibility data on GitHub
КомпьютерыМобильные
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome для AndroidEdge MobileFirefox для AndroidOpera для AndroidSafari on iOSSamsung Internet
Базовая поддержкаChrome Полная поддержка ДаEdge ? Firefox Полная поддержка Да
Замечания
Полная поддержка Да
Замечания
Замечания From Firefox 62, if the domain cannot be identified, domain returns an empty string instead of null. See bug 819475.
IE ? Opera ? Safari ? WebView Android Полная поддержка ДаChrome Android Полная поддержка ДаEdge Mobile ? Firefox Android Полная поддержка Да
Замечания
Полная поддержка Да
Замечания
Замечания From Firefox 62, if the domain cannot be identified, domain returns an empty string instead of null. See bug 819475.
Opera Android ? Safari iOS ? Samsung Internet Android ?

Легенда

Полная поддержка  
Полная поддержка
Совместимость неизвестна  
Совместимость неизвестна
Смотрите замечания реализации.
Смотрите замечания реализации.

Смотрите также

Метки документа и участники

Внесли вклад в эту страницу: nikolaifedorov, Horuslllll
Обновлялась последний раз: nikolaifedorov,