Ответ 1
Я нашел подобное обсуждение, Uncaught SecurityError: Не удалось прочитать свойство contentDocument из HTMLIFram.
Эта проблема была запущена при попытке вызвать ajax в другой домен, пожалуйста, просмотрите эту статью для получения дополнительной информации о той же политике происхождения
Статья о том же оригинале Mozilla
Чтобы исправить это, вам нужно будет добавить этот код
document.domain = 'yourdomain.com'
Из самой статьи:
Страница может изменить свое происхождение с некоторыми ограничениями. A script может установить значение document.domain в подмножество текущего домена. Если это так, более короткий домен используется для последующих проверок происхождения. Например, предположим, что script в документе http://store.company.com/dir/other.html выполняет следующее утверждение:
document.domain = "company.com";
После выполнения этой инструкции страница проведет проверку происхождения с помощью http://company.com/dir/page.html. Однако, по тем же соображениям, компания .com не смогла установить document.domain на othercompany.com.
Номер порта хранится отдельно браузером. Любой вызов сеттера, включая document.domain = document.domain, заставляет номер порта перезаписываться нулевым. Поэтому нельзя разговаривать company.com:8080 с company.com, только установив document.domain = "company.com" в первую очередь. Он должен быть установлен так, чтобы номера портов были пустыми.