Z jakiegoś powodu chrome nie obsługuje już document.domain i wyrzuca błąd, gdy linia jest odczytywana w iframe zawierającej subdomenę i subdomenę zawierającą iframe. Czy jest w ogóle wokół tego?
Błąd: Nieprzechwycony Błąd: SECURITY_ERR: Wyjątek DOM 18
2 odpowiedzi
Domena dokumentu powinna być pisana małymi literami, a zasady są takie:
// Actual domain is "www.foo.com"
document.domain = "foo.com"; // this is valid
// Actual domain is "bar.foo.com"
document.domain = "www.foo.com"; // this is invalid, "bar.foo.com" is not a subdomain of "www.foo.com"
// Actual domain is "blah.bar.foo.com"
document.domain = "bar.foo.com" // Ok
document.domain = "foo.com" // Still ok
document.domain = "bar.foo.com" // Invalid, you can't change it back to a more specific domain.
document.domain
powinien działać w przypadku ramek iframe, o ile jesteś w tej samej domenie:
iframe=document.querySelector('iframe');
console.log(iframe.contentDocument.domain)
Jeśli próbujesz uzyskać dostęp do dokumentu elementu iframe, który znajduje się w innej domenie niż ramka nadrzędna, pojawi się błąd zabezpieczeń, który widzisz.
Pamiętaj, że subdomeny są również uważane za różne domeny, więc możesz napotkać problemy z wieloma domenami: Pytanie dotyczące międzydomenowego (subdomeny) żądania ajax
Podobne pytania
Nowe pytania
google-chrome
[google-chrome] dotyczy pytań związanych z programowaniem w Google Chrome, przeglądarce internetowej korzystającej z silnika renderującego Blink. Ostrzeżenie! Ogólne wsparcie dla przeglądarki nie jest na temat: pytania dotyczące używania lub konfiguracji przeglądarki należy kierować na https://superuser.com. Chrome OS i Chromium nie są na temat: pytania dotyczące [google-chrome-os] lub [chromium] powinny używać tych tagów.